我正在尝试将我的React前端连接到后端,我尝试了一切,但仍然无法正常工作。我添加了"proxy" : "localhost:5000"
也没有运气我尝试过
const { createProxyMiddleware } = require('http-proxy-middleware');
module.exports = function (app) {
app.use(
'/api',
createProxyMiddleware({
target: 'http://localhost:5000',
changeOrigin: true,
})
);
};
也没有运气。有没有人找到解决问题的办法。我到处都是stackoverflow
更新:索引文件
// Imports
const express = require('express')
const app = express();
const cors = require('cors')
const mongoose = require('mongoose');
const bodyParser = require('body-parser')
const cookieParser = require('cookie-parser')
const config = require('./config/key')
const routes = require('./routes/api')
require('dotenv').config()
// -----Connect to the database
mongoose.connect(config.mongoURI,
{useNewUrlParser: true,useUnifiedTopology:true,
createIndexes : true}).then(()=>{
console.log("Database connected")
}).catch((error)=>{
console.log(error)
})
// ----setting up middleware
const corsOptions = {
origin:['http://localhost:3000'],
credentials: true,
optionsSuccessStatus: 200
}
app.use(cors(corsOptions))
app.use(bodyParser.urlencoded({extended : true}))
app.use(bodyParser.json())
app.use(cookieParser())
app.use('/api', routes);
// ---- Setting up server to listen on port 5000
app.listen(5000,()=>{
console.log("App is running on 5000")
})
答案 0 :(得分:0)
将您的代码更新为此
const { createProxyMiddleware } = require("http-proxy-middleware");
module.exports = function (app) {
app.use(
createProxyMiddleware("/api/*", { target: "http://localhost:5000/" })
);
};
答案 1 :(得分:0)
对我来说,问题是港口。更改为3002之后又重新设置为5432。但是不知道为什么,因为如果端口已经被使用,那么节点应该抛出错误。