axios是基于promise的HTTP库,支持promise所有的API
promise概念
promise是JS中解决异步编程的语法,从语法上来讲,promise是一个构造函数,从功能来讲,用promise对象封装异步操作并获取结果。 promise支持链式调用,可以解决回调地狱(多级的异步嵌套调用)。 promise的基本使用 创建promise对象并使用回调函数
<script>
const p=new Promise((resolve,reject)=>{
setTimeout(()=>{
const time=Date.now()
if(time%2==0){
resolve('成功的数据:'+time)
}
else{
reject('失败的数据:'+time)
}
},1000)
})
p.then(
value=>{
console.log('接收成功的数据:'+value)
},
reson=>{
console.log('接收失败的数据:'+reson)
}
)
</script>
如果当前时间是奇数,则调用reject()反之,偶数调用resolve() .then是获取成功或者失败的数据
async和await
async和await是编写异步操作的解决方案,也是建立在promise上的新写法 两者同时使用,如果在方法中使用了await,那么必须在方法的前面加上async
1.async函数
async的右侧是一个函数,函数的返回值是promise对象。 剩下的改天写
|