我的应用程序有问题。我使用 Express/node 作为 API 并尝试使用 React 访问它,这与 Axios 配合得很好。
现在我尝试了一个 DevExpress 网格组件来显示数据。获取数据工作正常,但如果我想编辑和保存,我总是会遇到 CORS 错误。
我在快递上的设置:
app.use(
cors({
origin: '*',
methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
})
);
API 如下所示:
router.put('/dataToEdit', auth, (req, res) => {
MasterData.updateData(req, res);
});
如果我想调用并绑定到网格:
const dataSource = createStore({
key: 'helperboxTypeId',
loadUrl: `${url}/getAlldataToEdit`,
insertUrl: `${url}/dataToEdit`,
updateUrl: `${url}/dataToEdit`,
deleteUrl: `${url}/dataToEdit`,
onBeforeSend: (method, ajaxOptions) => {
ajaxOptions.headers = {
'Content-Type': 'application/json',
'x-auth-token': localStorage.token,
};
ajaxOptions.crossDomain = true;
},
});
我尝试了它,我认为所有可能的设置星座,在我问这个问题之前,我在几个论坛中搜索了大约 1 天 :) 也许有人正在使用相同的组件并且可以以某种方式提供帮助。错误是:
Access to XMLHttpRequest at 'http://localhost:5000/api/masterData/dataToEdit' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
另一种解决方案可能是我在那里使用 Axios 但无法集成它。
提前谢谢了!