JavaScript 发起请求方式,我知道的有使用 XMLHttpRequest,这种技术被叫做 AJAX,比较流行的库是 Axios、jQuery。现在还有一个流行的发起请求的方法,那就是使用浏览器内置的 fetch API,必学,它是 ES2015 中提出的新 API,直到今天我在发现它。

参看 MDN:《XMLHttpRequest》《使用 Fetch》

参看一些博客:《Fetch API 是什么?能代替 AJAX 吗?》《Web开发中的“黑话”》《AJAX and APIs - React 官网》
《Fetch API - MDN》《一文秒懂 ajax, fetch, axios》

这里还有几篇好玩的文章:《为什么你不应该再使用 Fetch API?》《fetch的优势在哪里,为什么有人会用fetch?》

(未来有空了更新 fecth API 的使用方法)

一、简单上手

1. 使用 XMLHttpRequest 发请求(四步)

  1. 创建 XMLHttpRequrst 对象
  2. 调用 open 方法
  3. 指定回调函数(是异步的)
  4. 发送请求
  1. let request = new XMLHttpRequest()
  2. request.open('GET','//v1.alapi.cn/api/lajifenlei?name=手机')
  3. request.onreadystatechange=function(){
  4. if (request.readyState === 4 && request.status === 200){
  5. console.log(JSON.parse(request.response))
  6. }
  7. }
  8. request.send()

2. 使用 fetch 发请求(两步)

  • 拿到请求的响应
  • 拿到响应中的数据
  1. fetch('//v1.alapi.cn/api/lajifenlei?name=手机')
  2. .then(function(response) {
  3. return response.json();
  4. })
  5. .then(function(myJson) {
  6. console.log(myJson)
  7. });

二、使用 fetch

三、使用 axios

「@浪里淘沙的小法师」