vue フロントエンド ログインがトークンを取得したら、それを Cookie に追加し、そのトークンを使用して他のデータを取得します (リクエスト ヘッダーに追加します)。

1. ログインしてトークンを取得し、Cookie に保存します。

ここに画像の説明を挿入

 ここで私のCookieは1日有効期限が切れるように設定されています
cookie.jsのコードは次のとおりです

// 设置cookie
export function setCookie(c_name, value, expiredays) {
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + expiredays);
  document.cookie =
    c_name +
    '=' +
    encodeURIComponent(value) +
    ';expires=' +
    exdate.toGMTString() +
    ';path=/';
}
// 读取cookie
export function getCookie(c_name) {
  let c_start = null;
  let c_end = null;
  if (document.cookie.length > 0) {
    c_start = document.cookie.indexOf(c_name + '=');
    if (c_start != -1) {
      c_start = c_start + c_name.length + 1;
      c_end = document.cookie.indexOf(';', c_start);
      if (c_end == -1) c_end = document.cookie.length;
      return decodeURIComponent(document.cookie.substring(c_start, c_end));
    }
  }
  return '';
}
// 检查cookie
export function checkCookie(c_name) {
  let username = getCookie(c_name);
  console.log(username);
  if (username != null && username != '') {
    return true;
  } else {
    return false;
  }
}
// 清除cookie
export function clearCookie(name) {
  setCookie(name, '', -1);
}

main.js はグローバルで使用できるようにインポートされます

import { setCookie, getCookie, checkCookie, clearCookie } from '@/utils/cookie';
Vue.prototype.$setCookie = setCookie;
Vue.prototype.$getCookie = getCookie;
Vue.prototype.$checkCookie = checkCookie;
Vue.prototype.$clearCookie = clearCookie;

request.jsリクエストヘッダー追加トークン

//导入
import {
    getCookie
} from '@/utils/cookie'
//使用
service.interceptors.request.use(
    res => {
        if (res) {
            if (getCookie("token")) {
                res.headers.Authorization = getCookie("token")
            }
            return res;
        }
    },
    err => {
        return Promise.reject(err);
    }
);

 最後に、ブラウザで表示できるようになります。

ここに画像の説明を挿入

 そして、それは次のリクエストが送信されるときのリクエストパラメータで確認できます。ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/w199809w/article/details/130226461