9

我已经使用create-react-app启动了一个反应应用程序并运行npm run eject脚本以访问所有文件。之后我安装了 express 并创建了与server.js文件位于同一级别的package.json文件

这些是server.js文件内容:

const express = require('express');
const app = express;

app.set('port', 3031);

if(process.env.NODE_ENV === 'production') {
  app.use(express.static('build'));
}

app.listen(app.get('port'), () => {
  console.log(`Server started at: http://localhost:${app.get('port')}/`);
})

这里没什么疯狂的,只是为未来的 api 代理设置我需要使用秘密并且我不想公开我的 api。

"proxy": "http://localhost:3001/"在此之后,我在我的package.json文件中添加了一个。我现在卡住了,因为我需要弄清楚如何正确启动我的服务器并server.js在开发模式下使用这个文件,然后在生产中使用。

理想情况下,如果我们可以使用多个代理,即/api/api2

4

1 回答 1

6

你不必弹出来运行你的 server.js。您可以将其与 withnode server.js一起运行create-react-app

npm start即使在弹出以启动您的开发服务器后,您仍然可以这样做。

要运行/api1and /api2,您只需在server.js文件中处理它,它应该可以正常工作。你需要port在你的server.jsproxy里面的设置中匹配package.json- 在这种情况下,它应该是"proxy": "http://localhost:3031"

于 2016-11-24T03:19:18.470 回答