Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何创建以节点服务器为后端的react redux应用程序?_Javascript_Node.js_Reactjs_Redux - Fatal编程技术网

Javascript 如何创建以节点服务器为后端的react redux应用程序?

Javascript 如何创建以节点服务器为后端的react redux应用程序?,javascript,node.js,reactjs,redux,Javascript,Node.js,Reactjs,Redux,我正在尝试使用节点服务器作为后端创建react redux应用程序。是否可以让节点服务器为react-redux应用程序服务,而不是在一个端口上使用dev server a=运行react-redux,在另一个端口上使用节点 首先需要一些想法。提前感谢:是的。。是的 您可以在“/”上提供您的react应用程序 并在另一个路由中侦听API请求 因此,react应用程序和api后端代码没有单独的代码库 您可以使用express在特定路线上为react应用程序提供服务 i、 e my-app.com/

我正在尝试使用节点服务器作为后端创建react redux应用程序。是否可以让节点服务器为react-redux应用程序服务,而不是在一个端口上使用dev server a=运行react-redux,在另一个端口上使用节点

首先需要一些想法。提前感谢:

是的。。是的

您可以在“/”上提供您的react应用程序 并在另一个路由中侦听API请求 因此,react应用程序和api后端代码没有单独的代码库

您可以使用express在特定路线上为react应用程序提供服务 i、 e my-app.com/

然后在另一个路由上提供与后端相关的内容

i、 e my-app.com/api


因此,当向my-app.com/express-services-express-services后端资源或API发出请求时,在一起创建express/react应用程序时,我会采取一些步骤。我将创建一个服务器和一个客户端目录。客户端目录是使用create-react-app创建的,服务器可以通过express-generator创建。我的项目dir——包含这两个元素的项目——基本上就是将两者融合在一起的胶水。在客户端应用程序中,我将添加proxy:localhost:3001或express api正在运行的任何端口,我将使用它来运行客户端和服务器,因为客户端同时由webpack dev server运行。在开发过程中,它们作为单独的服务器运行,但当我调用api时,就好像我直接调用express服务器本身一样

唯一需要担心的是部署应用程序。您可以使用create react app附带的build命令,并将其复制到通过express.static提供的express应用程序中的公共目录

下面是一个快速的示例:

这是一份用于redux SSR设置的有用文档。这有助于避免在两个端口上运行客户端和服务器


@在这种情况下,我需要运行两台服务器吗?一个用于react,另一个用于node.js?不,没有必要只是one@nadeshoki-你的意思是说,我可以让node.js在一条路径上为我的react应用程序提供服务,在不同的路径上为其他API提供服务吗?是的,我就是这么想的meant@nadeshoki-无论如何!谢谢不过,我还是更喜欢nadeshoki的建议,因为我可以避免在开发过程中使用两个开发服务器。此外,我在redux文档本身中发现了类似的解决方案。