vue之请求axios
如有不正,请指正!
一、为什么选择axios
1、ajax 混乱复杂难用
2、vue-resource 官方不在维护 ajax的封装
3、所以所以 axios 对promise的封装
promise 更优雅的处理异步 避免回调地狱
二、基本使用
1、安装 npm i axios --save
2、导入注册使用
axios({
url: ‘’, // httpbin.org
method: '', 默认get
params:{
}
}).then()
http://123.207.32.32:8000/home/multidata
http://123.207.32.32:8000/home/multidata?callback=xx jsonp
3、参数
get:params
post :data
三、并发请求
axios.all(【ax1,ax2】).then(results => {
});
四、axios配置信息
0、main.js里面先注册
1、全局配置
配置:axios.defaults.baseUrl = 'http://123.207.32.32:8000'
使用:
axios({
url: ‘/home/multidata’, //
method: '',
params:{
}).then()
2、可配置的信息
a、url
b、超时时间
c、返回内容格式
d、请求头
e、身份信息
五、axios实例和封装
1、实例
function test (参数){
const a1 = axios.create({
baseUrl: '',
timeout: 5000
})
return a1(参数):a1实例本身就是promise
}
使用:test ({
url: '',
parmas: {}
}).then()
2、封装
封装全局注册 这样有变动 只需要改一个地方 不需要改所有使用到的文件
a、回调函数 函数作为参数传入另一个函数
b、包装一层promise
c、直接使用 本身就是返回promise
六、axios拦截器
1、用于在发送请求或得到相应后 进行的一些统一的对应处理
2、请求拦截
axios.interceptors.request.use(config => {
1、再次处理参数config
2、加loading效果
3、某些请求的特殊信息 如token
return config 必要
},error => {
})
3、响应拦截
axios.interceptors.response.use(res => {
响应状态200 实际code是其他 可能还有其他报错信息
表示 可以响应 通信正常 但是 携带信息 或者参数错误
return res
},error => {
对错误信息处理
})
posted on 2022-06-16 15:32 二月龙抬头之伏龙翔天 阅读(361) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具