config.headers.Authorization = 'Bearer' + localStorage.token什么意思
时间: 2023-05-29 19:03:58 浏览: 772
这段代码为设置HTTP请求头部的Authorization字段为Bearer加上localStorage中的token值。Bearer是OAuth2.0的一种认证方式,表示使用一个令牌来进行授权。localStorage是HTML5中的一种存储方式,可以在浏览器本地存储数据。所以这段代码的意思是在HTTP请求中添加Authorization头部,使用Bearer认证方式,认证的令牌值从localStorage中获取。
相关问题
const http = axios.create({ timeout: 1000 * 30, withCredentials: true, headers: { 'Content-Type': 'application/json; charset=utf-8' } }) //请求拦截器 http.interceptors.request.use( config => { var Authorization = localStorage.getItem("Authorization") // debugger // console.log("授权码是:" + Authorization) if (Authorization) { //判断token是否存在 config.headers['Authorization'] = Authorization; //将token设置成请求头 } return config; }, err => { return Promise.reject(err); } ); /** * 响应拦截 */ http.interceptors.response.use(response => { // debugger if (response.data && response.data.code === 401) { // 10021, token失效 clearLoginInfo() // console.log("token过期") router.replace('/') } // debugger // console.log(typeof (response.headers.Authorization)) // console.log(response.headers.Authorization) // debugger if (typeof (response.headers.authorization) !== "undefined") { let token = response.headers.authorization localStorage.setItem('Authorization', 'Bearer ' + token) // console.log("已经刷新token: " + token) } // debugger return response }, error => { return Promise.reject(error) }) export default http;
这段代码是使用axios进行网络请求时,设置了请求拦截器和响应拦截器。
请求拦截器用于在请求发送前对请求进行处理,这里判断了本地存储中是否存在Authorization,如果存在则将其设置成请求头的Authorization字段,这是用于用户身份验证的Token。如果不存在则不进行处理。
响应拦截器用于在响应返回后对响应进行处理,这里判断了响应中是否包含Authorization字段,如果包含则将其存储到本地存储中,用于更新用户身份验证的Token。另外,如果响应中的状态码为401,则表示用户的Token已失效,需要清除本地存储中的Token,并将用户重定向到登录页面。
这种拦截器的设置可以增强应用的安全性和稳定性,可以在请求和响应中进行统一的处理,减少代码的重复编写。
const user = localStorage.getItem('user') || ''; let userInfo = null; // console.log(user, 'user') if (user !== 'undefined') { userInfo = JSON.parse(user); } else { userInfo = undefined } // console.log(userInfo.access_token, 'userinfo'); const access_token = (userInfo && userInfo.access_token) || ''; config.headers.Authorization = 'Bearer' + ' ' + access_token;
这段代码的作用是从本地存储中获取用户信息,并将用户的 access_token 添加到请求头(config.headers.Authorization)中,以便进行身份验证。具体来说,代码首先从本地存储中获取用户信息(localStorage.getItem('user')),如果获取不到则将 user 设置为一个空字符串(|| '')。然后,代码判断 user 是否等于字符串 'undefined',如果不是则将 user 解析为 JSON 对象,并将解析结果赋值给 userInfo;否则将 userInfo 设置为 undefined。最后,代码通过 userInfo.access_token 来获取用户的 access_token,如果 userInfo 不存在或者 userInfo.access_token 不存在,则将 access_token 设置为一个空字符串(|| '')。最终,代码将 access_token 添加到请求头中,以便进行身份验证。
阅读全文