免费爱碰视频在线观看,九九精品国产屋,欧美亚洲尤物久久精品,1024在线观看视频亚洲

      50、token過期 如何使用refresh_token實現(xiàn)無感刷新頁面?升級版

      50、token過期 如何使用refresh_token實現(xiàn)無感刷新頁面?升級版

      login.vue

      御劍乘風(fēng)來,除魔天地間!===login

      user.vue

      御劍乘風(fēng)來,除魔天地間!===user 姓名:{{ userInfo.name }}

      request.js

      import axios from “axios”;var instance = axios.create({ baseURL: “http://toutiao.itheima.net/v1_0”, timeout: 5000,});const requestFreshToken = axios.create({ baseURL: “http://toutiao.itheima.net/v1_0”, timeout: 5000,});// 添加請求攔截器instance.interceptors.request.use( function (config) { // 在發(fā)送請求之前做些什么 let tokenObj = JSON.parse(localStorage.getItem(“token”)); if (tokenObj && tokenObj.token) { // 添加請求頭 config.headers.Authorization = “Bearer ” + tokenObj.token; } return config; }, function (error) { // 對請求錯誤做些什么 return Promise.reject(error); });// 添加響應(yīng)攔截器instance.interceptors.response.use( function (response) { // 對響應(yīng)數(shù)據(jù)做點什么 return response.data; }, async function (error) { // console.log(error.response, 222); if (error.response.status === 401) { // console.log(error, 88); /* 解決token過期的問題 */ let tokenObj = JSON.parse(localStorage.getItem(“token”)); const res = await requestFreshToken({ method: “PUT”, url: “/authorizations”, headers: { Authorization: “Bearer ” + tokenObj.refresh_token, }, }); // 將使用刷新token獲取的新的token存儲起來 localStorage.setItem( “token”, JSON.stringify({ token: res.data.data.token, refresh_token: tokenObj.refresh_token, }) ); // console.log(res, 777); // 這里重新發(fā)送請求后 使用的是request 又會走上面的請求攔截 又會重新攜帶剛剛存的新的token return instance(error.response.config); } // 對響應(yīng)錯誤做點什么 return Promise.reject(error); });export default instance;

      router/index.js

      { path: “/”, component: () => import(“../tokens/login.vue”), name: “login”, }, { path: “/user”, component: () => import(“../tokens/user.vue”), name: “user”, },

      api/use.js

      import request from “@/utlis/request.js”;export const loginApi = (data) => { return request({ method: “post”, url: “/authorizations”, data, });};export const userApi = () => { return request({ url: “/user”, });};

      鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
      (0)
      用戶投稿
      上一篇 2022年7月12日 06:05
      下一篇 2022年7月12日 06:05

      相關(guān)推薦

      聯(lián)系我們

      聯(lián)系郵箱:admin#wlmqw.com
      工作時間:周一至周五,10:30-18:30,節(jié)假日休息