首页 > 解决方案 > 动态设置 axios 基本 url

问题描述

我从 asyncstorage 获取基本 url,我想将其设置为 axios 实例的基本 url。

目前我正在遵循以下代码,但它不起作用

const axiosInstance = axios.create({
 // baseURL: API_END_POINTS.BASE_URL+AsyncStorage.getItem('dealerNo'),
});
axiosInstance.defaults.timeout = 10000000;
axiosInstance.interceptors.request.use(
  async config => {
axiosInstance.defaults.baseURL=await getBaseUrl();
    return config;
  },
  error => Promise.reject(error)
);

  export async  function getBaseUrl() {
    var No = await AsyncStorage.getItem('dealerNo')
    var value =API_END_POINTS.BASE_URL+  No;
    return value;
  }


axiosInstance.defaults.headers.post['Content-Type'] = 'application/json';
export default axiosInstance;

我正在导入上述 axiosInstance 以进行 get 或 post 调用。

标签: reactjsreact-nativeaxios

解决方案


代替axiosInstance.defaults.baseURL,config.baseURL = await getBaseURL();就足够了,应该可以工作。至少它在我身边正确地设置了 baseURL。


推荐阅读