Reactjs http代理中间件未代理到其他服务器的索引页?
我有两台服务器在Docker上运行。一个是react前端,位于Reactjs http代理中间件未代理到其他服务器的索引页?,reactjs,http-proxy-middleware,Reactjs,Http Proxy Middleware,我有两台服务器在Docker上运行。一个是react前端,位于localhost:3000,而后端运行于localhost:9000。当我转到localhost:3000/api时,我想进入后端的索引页面,即localhost:9000 在通过create react app创建的myApp文件夹中创建了setupProxy.js文件: const proxy = require('http-proxy-middleware'); module.exports = function(app)
localhost:3000
,而后端运行于localhost:9000
。当我转到localhost:3000/api时,我想进入后端的索引页面,即localhost:9000
在通过create react app创建的myApp文件夹中创建了setupProxy.js文件:
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use(proxy('/api', { target: 'http://backend:9000' }));
};
当我转到
localhost:3000/api
时,我会被发送到localhost:9000/api
,而不是localhost:9000
http代理中间件
有一个pathRewrite
选项,请参阅
在您的特殊情况下:
constproxy=require('http-proxy-middleware');
module.exports=函数(应用程序){
应用程序使用(代理(“/api”{
目标:'http://backend:9000',
路径重写:{'^/api':'''}
}));
};
这通常应将localhost:3000/api/endpoint
重写为localhost:9000/endpoint
请注意,还有一个路由器
选项可用于更定制的行为