失效链接处理 |
Axios 技术文档 PDF 下载
本站整理下载:
相关截图:
![]()
主要内容:
axios是基于Promise的HTTP请求客户端,可同时在浏览器和node.js中使用
功能特性
在浏览器中发送XMLHttpRequest请求
在node.js中发送http请求
支持Promise API
拦截请求和响应
转换请求和响应数据
自动转换 JSON 数据
客户端支持保护安全免受 XSRF 攻击
那么,问题来了,什么是 Promise?
5.2 Promise
在JavaScript的世界中,所有代码都是单线程执行的。由于这个“缺陷”,导致JavaScript的所有网络操
作,浏览器事件,都必须是异步执行。异步执行可以用回调函数实现:
function callback() { console.log('Done'); }console.log('before setTimeout()'); setTimeout(callback, 1000); // 1秒钟后调用callback函数 console.log('after setTimeout()');
观察上述代码执行,在Chrome的控制台输出可以看到:
before setTimeout()
after setTimeout()
(等待1秒后)
Done
可见,异步操作会在将来的某个时间点触发一个函数调用。AJAX就是典型的异步操作。
2018/12/10 Axios
file:///D:/A8%E8%B5%84%E6%96%99/iwanttosayno-vue_book-master/vue_book/chapter05/Axios.html 2/13
request.onreadystatechange = function () { if (request.readyState === 4) { if (request.status === 200) { return success(request.responseText); } else { return fail(request.status); } } }
把回调函数success(request.responseText)和fail(request.status)写到一个AJAX操作里很正常,但是不
好看,而且不利于代码复用。
有没有更好的写法?比如写成这样:
var ajax = ajaxGet('http://...'); ajax.ifSuccess(success) .ifFail(fail);
Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。
所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的
结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,
各种异步操作都可以用同样的方法进行处理。
|