javascript - 使用 POST 请求的 fetch 反应 CORS 问题
问题描述
我有一个在http://localhost:10080/v1 [我无法更改 api 的代码] 上运行的 api。我已经构建了一个反应应用程序来将一些发布数据发送到该 api。React 应用程序在http://localhost:3000上运行
handleSubmit(event){
event.preventDefault()
const base_url="http://localhost:10080/v1/"
const data={<<some json data>>}
let headers = new Headers();
headers.append('Content-Type', 'application/json')
fetch(base_url,{
method:'POST',
mode: 'no-cors',
header:headers,
body: JSON.stringify(data),
})
}
当我更改为时mode
,cors
我的跨域请求被阻止。当我更改mode
为 时no-cors
,我收到415-Unsupported Media Type
错误,因为当我们禁用 cors 时,我们无法更改请求标头(在其他答案和文档中给出)。如何克服这一点并向该 api 发送发布请求?
解决方案
使用 CMD 在您的 Node 应用程序中运行“npm install cors”,然后在您的节点应用程序的 index.js 文件中添加以下代码。
const cors = require('cors');
app.use(cors());
推荐阅读
- sql-server - SQL Server 在 set 子句中多次指定列名。实体框架问题
- caching - 在 Laravel 5.5 中配置 Redis Sentinel
- python-3.x - 带有 Power BI 的 Windows 中的 Anaconda
- python - Python中的复杂回归模型
- javascript - 如何在命令行中传递环境变量并根据url动态选择变量?
- android - Android 应用程序在迁移到 androidx 后停止工作 pre API 21
- python - 两个数组的 Numpy 减法
- javascript - 在 ES6 中调用模块内的函数
- r - 从小标题绘图时将案例名称保留在回归对象中
- c# - 隐藏继承控件的“名称”属性