请教: 如何使用 JavaScript 实现请求 api 并解析 json

2019-08-26 11:06:50 +08:00
 Pzqqt

问题案例

在度娘上搜到了一些答案,不过都是使用 JQuery 实现的。请问有不使用 JQuery 实现的方法吗?

7066 次点击
所在节点    JavaScript
30 条回复
jowan
2019-08-26 11:11:11 +08:00
不太明白你的意思 不就是为了请求 api 吗,不想用 jq 的话
原生 xhr? axios?
jorneyr
2019-08-26 11:11:19 +08:00
1. 原生 JS 的 Ajax
2. Axios
3. Fetch
sdxlh007
2019-08-26 11:14:55 +08:00
function ajax(url){
        var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : ActiveXObject("microsoft.XMLHttp")
        xhr.open("get",url,true);
        xhr.send();
        xhr.onreadysattechange = () =>{
            if(xhr.readystate == 4){
                if(xhr.status == 200){
                    var data = xhr.responseTEXT;
                    return data;
                }
            }
        }    
    }
lovedebug
2019-08-26 11:16:25 +08:00
很多异步请求库可以直接加载到页面使用的。
Sapp
2019-08-26 11:36:37 +08:00
吓得我看了下时间...
这不就是现在各种前端渲染的 UI 框架的正常操作么? ajax 发送一下请求,回来之后解析不就行了么?
Hoshinokozo
2019-08-26 11:46:41 +08:00
jq 只是对 xhr 封装了一下而已,底层还是 xhr,楼主可能需要学习一下 AJAX 方面的知识
1brother
2019-08-26 12:16:11 +08:00
Ajax 了解一下
SuperMild
2019-08-26 12:27:31 +08:00
这个就是你想要的 http://vanilla-js.com
wszgrcy
2019-08-26 12:34:07 +08:00
触发关键词 api,json,等待那个人出现
agdhole
2019-08-26 12:35:25 +08:00
FetchAPI
Axios
xlui
2019-08-26 12:37:57 +08:00
@wszgrcy 那个男人要出现了吗?
ipwx
2019-08-26 12:52:17 +08:00
那一天,v 友再一次回想起了被辣个男人所支配的恐怖…
sparkle2015
2019-08-26 13:17:52 +08:00
```
fetch(url)
.then(res => res.json())
.then(data => console.log(data)
```
IsaacYoung
2019-08-26 13:34:50 +08:00
🍌迟但到
xrr2016
2019-08-26 14:04:35 +08:00
API JSON 这标签简直就是为那个男人定制的啊
SilentDepth
2019-08-26 14:08:41 +08:00
bojackhorseman
2019-08-26 14:13:07 +08:00
@SuperMild #8 我还认真的看了一遍,甚至点击了下载按钮,直到看到后面才笑出声。文档连接到 mdn 太真实了。
SuperMild
2019-08-26 15:33:11 +08:00
@bojackhorseman 我当初也是这样哈哈哈哈。不过这确实是个不错的学习材料,可以看看原生 js 怎么弄,随着 ES 版本不断提升,很多操作用原生写也不算很麻烦了。
SuperMild
2019-08-26 15:37:43 +08:00
@bojackhorseman 我搞错了,#16 那个网站才是学习材料。
catch
2019-08-26 15:38:52 +08:00
mdn

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/595116

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX