我有一个具有这种结构的typeorm项目:

在客户端和根目录中,索引文件都位于src目录中。在客户端目录的package.json中,我更改了一项内容(“build”),并添加了代理:
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build && mv build ../public",
"test": "react-scripts test",
"eject": "react-scripts eject",
"gen": "graphql-codegen --config codegen.yml"
},
"proxy": "http://localhost:4000"在src/index.ts中,我这样做:
const app = express();
...
app.get("/", (_req, res) => res.send("hello"));
app.use(express.static('../public'));
app.get('*', (_, res) => {
res.sendFile(path.resolve(__dirname, '../public', 'index.html'))
});
const port = process.env.PORT || 4000;
app.listen(port, () => console.log(`Server started on port ${port}`));和来自根目录的package.json的一部分:
...
"scripts": {
"start": "ts-node src/index.ts",
"server": "nodemon --exec ts-node src/index.ts",
"client": "npm start --prefix client",
"dev": "concurrently \"npm run server\" \"npm run client\""
}当我在本地主机上运行它时,它可以工作,但当我在heroku上部署它时,它向我展示了,我在后端(在端口4000)上得到的,就是这个"hello“。
发布于 2020-07-21 02:33:41
好了,这很好。我只是将无效路径传递给了espress.static:
app.use(express.static('public'));https://stackoverflow.com/questions/63000743
复制相似问题