所属分类:web前端开发
vue实现第三方请求的方法:1、通过“import axios from 'axios';”导入axios;2、将axios放在原型链上;3、添加请求拦截器,代码如“axios.interceptors.request.use(config => {...}”。
本教程操作环境:Windows10系统、vue3版、DELL G3电脑
vue怎么实现第三方请求?
在vue中请求第三方数据--axios
import axios from 'axios';
Vue.prototype.axios = axios;
登录后复制
axios.request(config)
axios.get(url[, config])
axios.delete(url[, config])
axios.head(url[, config])
axios.options(url[, config])
axios.post(url[, data[, config]])
axios.put(url[, data[, config]])
axios.patch(url[, data[, config]])
// 添加请求拦截器
axios.interceptors.request.use(config => {
// 在发送请求之前做些什么
return config;
}, error => {
// 对请求错误做些什么
return Promise.reject(error);
});
// 添加响应拦截器
axios.interceptors.response.use(response => {
// 对响应数据做点什么
return response;
}, error => {
// 对响应错误做点什么
return Promise.reject(error);
});
登录后复制
axios.interceptors.request.use(config => {
// 在发送请求之前做些什么
let token = sessionStorage.getItem('userTk');
if (token) {
config.headers.Authorization = token
}
return config
}, error => {
// 对请求错误做些什么
return Promise.reject(error);
});
登录后复制
axios.interceptors.response.use(response => {
if (response.data.code === '200') {
Auth.setToken(sessionStorage.getItem('userId'))
}
return response;
},
error => {
console.warn(error);
console.warn(error.response);
if ((error.response.status && error.response.status === 401) || error.response.statusCode === 401) {
// 已超时
Auth.removeToken(sessionStorage.getItem('userId'));
sessionStorage.clear();
router.replace('/login')
return Promise.reject('身份已过期,请重新登录!');
}
if(error.response && error.response.status === 500)
return Promise.reject('服务异常,请稍后重试!');
});
登录后复制
推荐学习:《vue视频教程》
以上就是vue怎么实现第三方请求的详细内容,更多请关注zzsucai.com其它相关文章!