node.js - Vue.js 和 Nodejs 的 CORS 问题
问题描述
我将 vuejs 与 nodejs 一起使用,vue 客户端地址http://localhost:8000
,nodejs 服务器地址http://localhost:3000
。
调用 api 时出现 cors 错误CORS preflight channel did not succeed request headers
要求
Access-Control-Request-Headers: content-type
Access-Control-Request-Method: POST
Host:localhost: 3000
Origin:http://localhost: 8000
回复
Access-Control-Allow-Headers: Origin, X-Requested-With, Accept,content-type
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE, PUT,PATH
Access-Control-Allow-Origin: *
Access-Control-Max-Age: 86400
Content-Type:application/json; charset=utf-8
响应错误是NS_ERROR_DOM_BAD_URI
解决方案
如果您使用expressjs
,您可以简单地使用nodejs cors lib 在您的节点服务器中启用 CORS。
我强烈建议您仅出于开发目的激活它:
var cors = require('cors')
if (NODE_ENV !== 'production') {
app.use(cors())
}
推荐阅读
- python-3.x - 尝试在打印中插入多个变量以检查变量是否正确插入
- outlook - 如何使用 EWS API 重新创建加密和/或签名的电子邮件?
- oracle - 如何在 Oracle 中卸载 3 亿行表
- c++ - 将进程亲和性设置为特定进程
- ecmascript-6 - 更改为模板文字
- linux - 需要将命令的输出转换为 linux 中的逗号分隔值
- python-3.x - 如何使分组的熊猫 DataFrage 的所有行都满足特定条件?
- angular - 如何在模板中访问,反应形式,数组中的数组
- swift - 在swift中的自定义标题中获取具有文件大小的下载文件的进度
- javascript - 从特定过滤器获取信息