【发布时间】:2020-07-23 18:52:16
【问题描述】:
过去,我通过在客户端 package.json 文件中使用成功地向 Heroku 启动了全栈应用程序。
“代理”:“http://localhost:3001”
现在我得到一个“无效的主机头”,我确实通过删除代理以及使用以下代码实现 setupProxy.js 文件来修复该错误,但之后应用程序根本不会调用后端并出现错误.
const { createProxyMiddleware } = require('http-proxy-middleware');
module.exports = function(app) {
app.use(
'/api',
createProxyMiddleware({
target: 'http://localhost:3001',
changeOrigin: true,
})
);
};
我想知道如何修复,或者最近 Heroku 中是否有任何更改以不允许客户端 package.json 文件中的代理?
【问题讨论】:
-
没有充分的理由在 Heroku 的生产部署中运行两个 Web 服务器(前端和后端)。虽然很常见,但这仍然是错误的。在开发过程中只需要两台服务器,大概是在 Heroku 部署之前完成的。因此,只需将一台服务器(后端)部署到 Heroku,就不需要代理了。以project 为例。
标签: node.js reactjs express heroku proxy