首頁  >  文章  >  web前端  >  vue怎麼實現第三方請求

vue怎麼實現第三方請求

藏色散人
藏色散人原創
2023-01-29 14:41:401518瀏覽

vue實作第三方請求的方法:1、透過「import axios from 'axios';」導入axios;2、將axios放在原型鏈上;3、新增請求攔截器,程式碼如「axios .interceptors.request.use(config => {...}”。

vue怎麼實現第三方請求

#本教學操作環境:Windows10系統、vue3版、DELL G3電腦

vue怎麼實現第三方請求?

在vue中請求第三方資料--axios

1 axios - > 基於Promise物件-> async & await

2 create階段-> 傳回Promise物件-> 傳回的資料可以直接解構【資料處理】

  • 要寫入實例的資料(即頁面渲染使用的資料),需要以設定參數data接收

3 import axios from 'axios';

4 多次匯入、使用的axios -> 將axios放在原型鏈上

import axios from 'axios';
Vue.prototype.axios = axios;

5 請求方法的別名

  • 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]] )###############6 攔截器###
// 添加请求拦截器
axios.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  return config;
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(response => {
  // 对响应数据做点什么
  return response;
}, error => {
  // 对响应错误做点什么
  return Promise.reject(error);
});
###6.1 請求攔截應用程式###
axios.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  let token = sessionStorage.getItem('userTk');
  if (token) {
    config.headers.Authorization = token
  }
  return config
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error);
});
###6.2 回應攔截應用程式###
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怎麼實現第三方請求的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn