反应澄清

时间:2017-12-22 14:50:53

标签: reactjs express

我试图理解React可能会为生产目的创建一个应用程序。

我习惯于创建Node Express应用程序,如果我们想要https,我们需要https,而在https.createserver()中,我们提供了来自我们的CA和我们的密码的访问它的pem文件的路径。< / p>

我们没有这个选项来使用React的CA证书文件吗?或者因为它只是一个用户界面,它不需要吗?

假设我有一个Express API,我使用https创建,我可以使用postman获取信息,没有任何问题,我希望我的React App访问我的API。我唯一需要从我的api获取信息,我的react package.json文件中的代理行指向https://api.to.call.com?我认为从http发布或访问https服务器是不好的。

另外,我刚刚读到Create-React-App不应该用于制作。那么我应该用什么来制作呢?是否有Create-React-Production-App?或者这是我需要添加到我的快速服务器的其他东西?我对整个设置感到非常困惑。

1 个答案:

答案 0 :(得分:1)

React是一个前端库。因此,它与SSL证书无关,因为它最终只是在客户端界面(即浏览器)内运行的javascript代码。

当涉及到你的后端时,React也是不可知的。它可以是Node / Express,Rails,Python,PHP,你的前端真的不在乎,所有它会看到一个API,它根据请求提供数据(通常是JSON格式)。

您无需在同一服务器上提供API和前端文件 - 可以,但这只是一个偏好问题。要从前端访问您的API,您可以使用几个npm包中的一个,Axios是一个很好的,还有其他(Fetch,...);您所要做的就是使用您在Postman中使用的相同URL来连接您的API调用。

至于Create-React-App,它是一个很好的帮助工具,但我建议学习一下React生态系统,而不是盲目地依赖它。最棘手的部分可能是Webpack配置,但是一旦掌握了它,一切都变得容易多了。还有一些像poi这样的新工具可以为你做很多繁重的工作。使用Webpack,您可以拥有开发配置(热重新加载开发服务器等)和生产配置(将输出生产构建JS,HTML,CSS,可以使用分块进行优化等)。

我对Create-React-App不太熟悉(我更喜欢使用自己的样板项目),但是如果我没有弄错的话,你有可能访问你的完全自定义项目,see here。但要注意,它是单向操作。