求:有没有会 ant design pro v6 的

20次阅读

共计 1440 个字符,预计需要花费 4 分钟才能阅读完成。

后端使用的 satoken,每个请求都需要拿到 token 才能查询到数据

我在 app.ts 中配置了请求前拦截,但是返回的 token,其他请求头部 Authorization 并没有拿到浏览器本地存的 token

/**
 * requestInterceptors 接收一个数组,数组的每一项为一个 request 拦截器。等同于 umi-request 的 request.interceptors.request.use()。*/
const authHeaderInterceptor = (url: string, options: RequestOptionsInit) => {console.log('authHeaderInterceptor url, options:', url, options);
  // 如果是登录页面,不需要添加 token
  if (url.indexOf('/login/') !== -1 || url.indexOf('/logout') !== -1) {
    return {url: `${url}`,
      options: {...options, interceptors: true},
    };
  } else {const token = getToken();
    console.log('url, token:', url, token);
    let authHeader = {};
    // 如果 token 存在,就添加到请求头
    if (localStorage.getItem('ADMIN_TOKEN')) {authHeader = { Authorization: `Bearer ${localStorage.getItem('ADMIN_TOKEN')}` };
    }

    return {url: `${url}`,
      options: {...options, interceptors: true, headers: authHeader},
    };
  }
};


/**
 * requestInterceptors 接收一个数组,数组的每一项为一个 request 拦截器。等同于 umi-request 的 request.interceptors.request.use()。*/
const authHeaderInterceptor = (url: string, options: RequestConfig) => {console.log('authHeaderInterceptor url, options:', url, options);
  // 如果是登录页面,不需要添加 token
  if (url.indexOf('/login/') !== -1 || url.indexOf('/logout') !== -1) {
    return {url: `${url}`,
      options: {...options, interceptors: true},
    };
  } else {const token = getToken();
    console.log('url, token:', url, token);
    let authHeader = {};
    // 如果 token 存在,就添加到请求头
    if (localStorage.getItem('ADMIN_TOKEN')) {authHeader = { Authorization: `Bearer ${localStorage.getItem('ADMIN_TOKEN')}` };
    }

    return {url: `${url}`,
      options: {...options, interceptors: true, headers: authHeader},
    };
  }
};

求解

正文完
 0