请求获取token

更新时间:2023-05-26 20:33:18 阅读: 评论:0

请求获取token import externalaxios from 'axios';
import { externalApi } from '@/common/js/api';
// import {Message} from 'element-ui';
// externalaxios.defaults.timeout = 30000;
// externalaxios.defaults.baURL = '';
// ****************************************************************************************
function getLocalToken () {
const token = Item('externalLogintoken')
return token
}
// ****************************************************************************************over
const rvice = ate({
baURL: '',
headers: {
博物馆的英语'Content-Type': 'application/json',
'token': getLocalToken() // headers塞token
},
})
rvice.tToken = (token) => {
rvice.defaults.headers['token'] = token
window.ssionStorage.tItem('externalLogintoken', token)
}
/
/http request 拦截器
quest.u( config => {
Item("externalLogintoken")){
var token = Item("externalLogintoken");
}el{
var token = null;
}
config.data = JSON.stringify(config.data);新闻编辑室第三季
config.headers = Object.assign({
'Content-Type': 'application/json;chart=UTF-8',
'token': token,
}, config.headers);
return config;
},
error => {
ject(err);
}
);
//http respon 拦截器
// 是否正在刷新的标记
let isRefreshing = fal
// 重试队列,每⼀项将是⼀个待执⾏的函数形式
let requests = []车辆修理
spon.u(respon => {
const { code } = respon.data
console.log(code)
if (code == 401) {
const config = fig
console.log(config)
if (!isRefreshing) {
isRefreshing = true
return refreshToken().then(res => {
console.ken)
rvice.ken)
const { token } = ken
config.headers['token'] = ken
window.ssionStorage.tItem('externalLogintoken', token)
config.baURL = ''
freestyle是什么意思
// 已经刷新了token,将所有队列中的请求进⾏重试
requests.forEach(cb => cb(token))
requests = []
return rvice(config)
}).catch(res => {
<('refreshtoken error =>', res)
/
/window.location.href = '/'
}).finally(() => {
isRefreshing = fal
})
} el {
// 正在刷新token,将返回⼀个未执⾏resolve的promi
return new Promi((resolve) => {
// 将resolve放进队列,⽤⼀个函数形式来保存,等token刷新后直接执⾏        requests.push((token) => {
config.baURL = ''
config.headers['token'] = token
resolve(rvice(config))
})
})
}
}
return respon;
},
via是什么意思
error => {
ject(error)
}
)
export default rvice;
/
递交英文**
* 封装get⽅法
* @param url
* @param data
* @returns {Promi}
*/
export function externalget(url, params = {}) {
return new Promi((resolve, reject) => {
<(url, {params: params})
.then(respon => {
if(de==401){
tTimeout(() => {
resolve(respon.data)
}, 1000)
// ssionStorage.clear();
// this.$message.info("请先登录")
// router.push({
//  path: "/login",
//  querry: {redirect: router.currentRoute.fullPath}//从哪个页⾯跳转
// })
}
el {
resolve(respon.data);
}
})
.catch(err => {
reject(err)
})
})
}
export function externalpost(url, data = {}) {
return new Promi((resolve, reject) => {
rvice.post(url, data)
.
then(respon => {
.then(respon => {
//如果报 401  请重新登录
if(de==401){亚美尼亚语
}
el {
resolve(respon.data);
}
}, err => {
reject(err)
})
})
}
/**
hazelnut* 封装patch请求
* @param url
* @param data
* @returns {Promi}
*/
export function patch(url, data = {}) {
return new Promi((resolve, reject) => {    externalaxios.patch(url, data)
.then(respon => {
resolve(respon.data);
高考准考证打印
}, err => {
reject(err)
})
})
}
/**
* 封装put请求
* @param url
* @param data
* @returns {Promi}
*/
export function put(url, data = {}) {
return new Promi((resolve, reject) => {    externalaxios.put(url, data)
.then(respon => {
resolve(respon.data);
}, err => {
reject(err)
})
})
}
/**
* 封装delete⽅法
* @param url
* @param data
* @returns {Promi}
*/
export function deletes(url, params = {}) {  return new Promi((resolve, reject) => {    externalaxios.delete(url, {
params: params
})
.then(respon => {
resolve(respon.data);
})
.catch(err => {
reject(err)
})
无论如何日语})
}

本文发布于:2023-05-26 20:33:18,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/123740.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:请求   刷新   队列   保存   形式   函数   高考   编辑室
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图