首页 > 解决方案 > reactJS中没有'Access-Control-Allow-Origin

问题描述

我想知道如何在 reactJS 或 react-native 环境中的 axios post 方法中设置 Access-Control-Allow-Origin?我使用 CORS 附加组件,它可以工作,但我也想在标题中设置它,我尝试了这些方法,但没有一个不起作用。

axios.defaults.headers.post['Access-Control-Allow-Origin'] = '*';

let axiosConfig = {
  headers: {
    'method':'POST',
    'X-Requested-With': 'XMLHttpRequest',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Access-Control-Allow-Origin': '*',
  }
};

标签: reactjsreact-nativeaxios

解决方案


您需要在服务器端启用跨源请求。您如何使用 Express 执行此操作的片段如下所示

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});

这将使所有请求都支持 CORS。根据您的要求进行调整。

如果您无法更改服务器,请查看此链接以获取更多信息。


推荐阅读