Node.js 将mySQL与React一起使用:问题和CORS问题

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 :

我正在尝试在react应用程序中访问我的mySQL数据。为此,我使用了两个文件:

对于react:

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())