【问题标题】:Will setting default headers on axios headers reflect in all imported instances of axios in other modules?在 axios 标头上设置默认标头是否会反映在其他模块中所有导入的 axios 实例中?
【发布时间】:2019-08-14 22:26:43
【问题描述】:

在我的 React 模块中,我使用 Axios 来处理 HTTP 请求。我的问题是,如果我有两个模块(例如组件)A 和 B 并且都导入 axios,那么在模块 A 中设置默认标头是否会反映在模块 B 中?还是我必须在两个模块中都设置它?

我的问题的另一部分是:commonjs 在这方面与 es6 模块有什么不同吗?我知道 commonjs 使用缓存版本,所以你有一个单例,所以我假设更改会反映在所有文件中?我错了吗?

设置默认标题:

import axios from "axios";

axios.defaults.headers.common["Authorization"]  = `Bearer sdssdsdssd...`

【问题讨论】:

    标签: node.js reactjs axios


    【解决方案1】:

    Q1:请参考文档https://github.com/axios/axios#config-defaults。尤其是线

    您可以指定将应用于每个请求的配置默认值。

    您可以为 axios 请求设置自己的实例。也在文档https://github.com/axios/axios#custom-instance-defaults。


    Q2: 可能是因为您在 UI 上并使用 webpack 或任何其他打包程序,这无关紧要。因为构建的文件将是相同的。当然,架构师是有区别的。试试这个https://medium.com/computed-comparisons/commonjs-vs-amd-vs-requirejs-vs-es6-modules-2e814b114a0b

    【讨论】:

      猜你喜欢
      • 2018-04-11
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 2021-01-25
      • 2017-08-18
      • 2019-11-05
      • 2020-11-18
      • 2020-05-02
      相关资源
      最近更新 更多