在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

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

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

    login.vue

    御劍乘風來,除魔天地間!===login

    user.vue

    御劍乘風來,除魔天地間!===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); });// 添加響應攔截器instance.interceptors.response.use( function (response) { // 對響應數(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); } // 對響應錯誤做點什么 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)刪除。
    上一篇 2022年7月12日 06:05
    下一篇 2022年7月12日 06:05

    相關(guān)推薦

    聯(lián)系我們

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