Node.js 将mySQL与React一起使用:问题和CORS问题
我正在尝试在react应用程序中访问我的mySQL数据。为此,我使用了两个文件: 对于react:Node.js 将mySQL与React一起使用:问题和CORS问题,node.js,reactjs,request,cors,Node.js,Reactjs,Request,Cors,我正在尝试在react应用程序中访问我的mySQL数据。为此,我使用了两个文件: 对于react: var request = require("request"); var option = { url : 'http://localhost:3001/test', headers : { 'Access-Control-Allow-Origin':'*' }, json : true, body : { option :
var request = require("request");
var option = {
url : 'http://localhost:3001/test',
headers : {
'Access-Control-Allow-Origin':'*'
},
json : true,
body : {
option : "myoption"
},
mode: 'cors',
method :"GET"
};
request(option, function (error, response, body) {
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
console.log('body:', body);
});
ReactDOM.render(<App />, document.getElementById('root'));
serviceWorker.unregister();
但是,当我将“mode:'cors'”或“mode:'no-cors'”和
“获取的权限”http://localhost:3001/test“起源”http://localhost:3000'已被CORS策略阻止:对飞行前请求的响应未通过访问控制检查:请求的资源上不存在'access control Allow Origin'标头。如果不透明响应满足您的需要,请将请求的模式设置为“无cors”,以获取禁用cors的资源。
“
当我不知道的时候,我该怎么解决
另外,我使用了正确的语法来获取body.option,并且
res.send(result)
是否被console.log(“body”:body)
捕获?在node.js
应用程序上,您需要启用CORS。如果您使用express.js
您可以使用lirbary来实现这一点
npm安装cors
然后启用所有CORS请求:
var express = require('express')
var cors = require('cors')
var app = express()
app.use(cors())
在生产中,您将希望仅从您的域限制CORS请求
关于CORS的更多信息,您可以在此找到
var express = require('express')
var cors = require('cors')
var app = express()
app.use(cors())