将 reactjs 与 nodejs 连接起来
Connecting reactjs with nodejs
我有一个带有前端反应和后端节点的应用程序。后端经过邮递员测试并且工作正常。前端 ui 使用静态数据进行测试。现在我已经设置了一个带有反应部分的代理来连接到后端节点。
我的 React 应用程序正在端口 3000 上运行
我的节点在端口 5000 上 运行。
当我从前端请求后端路由时,该应用程序没有使用代理设置,而是给我一个 Bad request 错误。
我的前端在客户端文件夹中。请帮助。
该项目可以在以下 github link
找到
https://github.com/prashantbhat84/mern-contactkeeper
请帮忙
这似乎是一个 cross-origin 问题。有两种方法可以解决节点服务器中的cross-origin个问题,
- 使用cors节点模块
首先安装cors模块。 npm install cors
然后在您的应用程序中使用它
const Express = require("express");
const BodyParser = require("body-parser");
const Cors = require("cors");
const app = Express();
app.use(Cors());
app.use(BodyParser.urlencoded({ extended: false }));
app.use(BodyParser.json());
app.listen(3001, 'localhost', (err) => {
if(err) {
console.log(err);
process.exit(-1);
}
console.log("Server listen port 8083");
});
- 只需使用以下 headers
app.use(function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Methods", "GET, POST, OPTIONS, PUT, DELETE");
next();
});
NPM 使用配置文件,可以通过命令行 npm config set 添加它。正确设置的关键是设置的拼写。这已经咬了我很多次了!让 npm 在代理后面工作需要设置代理和 https-proxy 设置。关键是要注意 -(破折号)不是 _(下划线)。
打开命令提示符或终端会话并运行以下命令配置 npm 以使用您的网络代理。这些命令使用 domain_name.com 作为地址,使用 8080 作为端口。
npm config set proxy http://domain_name.com:8080
npm config set https-proxy http://domain_name.com:8080
我有一个带有前端反应和后端节点的应用程序。后端经过邮递员测试并且工作正常。前端 ui 使用静态数据进行测试。现在我已经设置了一个带有反应部分的代理来连接到后端节点。
我的 React 应用程序正在端口 3000 上运行 我的节点在端口 5000 上 运行。
当我从前端请求后端路由时,该应用程序没有使用代理设置,而是给我一个 Bad request 错误。
我的前端在客户端文件夹中。请帮助。 该项目可以在以下 github link
找到https://github.com/prashantbhat84/mern-contactkeeper
请帮忙
这似乎是一个 cross-origin 问题。有两种方法可以解决节点服务器中的cross-origin个问题,
- 使用cors节点模块
首先安装cors模块。 npm install cors
然后在您的应用程序中使用它
const Express = require("express");
const BodyParser = require("body-parser");
const Cors = require("cors");
const app = Express();
app.use(Cors());
app.use(BodyParser.urlencoded({ extended: false }));
app.use(BodyParser.json());
app.listen(3001, 'localhost', (err) => {
if(err) {
console.log(err);
process.exit(-1);
}
console.log("Server listen port 8083");
});
- 只需使用以下 headers
app.use(function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Methods", "GET, POST, OPTIONS, PUT, DELETE");
next();
});
NPM 使用配置文件,可以通过命令行 npm config set 添加它。正确设置的关键是设置的拼写。这已经咬了我很多次了!让 npm 在代理后面工作需要设置代理和 https-proxy 设置。关键是要注意 -(破折号)不是 _(下划线)。
打开命令提示符或终端会话并运行以下命令配置 npm 以使用您的网络代理。这些命令使用 domain_name.com 作为地址,使用 8080 作为端口。
npm config set proxy http://domain_name.com:8080
npm config set https-proxy http://domain_name.com:8080