umi-request headers 内容(token)之类的写不进去

umi-request

antd pro 拉下来的request,用的是

import { extend } from 'umi-request';
const request = extend({
  ....
  headers: {
    ....
    token:localStorage.getItem("token")
  },
});

想要每次请求带上token,就在headers里设置 token:localStorage.getItem("token")

但是有时候会发现token 明明获取到了,但是headers上写不进去

原因

extend只会在初始化的时候设置一遍,之后用的都是初始化时候配置的值

解决:

request.interceptors.request.use(async (url, options) => {
  if (
    options.method === 'post' ||
    options.method === 'put' ||
    options.method === 'delete' ||
    options.method === 'get'
  ) {
    const headers = {
      'Content-Type': 'application/json',
      Accept: 'application/json',
      token:localStorage.getItem("token")
    };
    return {
      url,
      options: { ...options, headers },
    };
  }
});

每次请求都在发出前,手动拦截一下,手动加上token

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容