您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“vue如何實現第三方請求”,內容詳細,步驟清晰,細節處理妥當,希望這篇“vue如何實現第三方請求”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
vue實現第三方請求的方法:1、通過“import axios from 'axios';”導入axios;2、將axios放在原型鏈上;3、添加請求攔截器,代碼如“axios.interceptors.request.use(config => {...}”。
在vue中請求第三方數據--axios
要寫入實例的數據(即頁面渲染使用的數據),需要用配置參數data接收
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如何實現第三方請求”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。