Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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
Node.js 如何将REST API与Express web app分离?_Node.js_Api_Rest_Express - Fatal编程技术网

Node.js 如何将REST API与Express web app分离?

Node.js 如何将REST API与Express web app分离?,node.js,api,rest,express,Node.js,Api,Rest,Express,我有一个Express应用程序服务于前端web应用程序 如何创建以/API作为根的API服务器?我想将API问题从主应用程序中分离出来。没有最好的方法。这完全取决于你想怎么做。您可以创建并装载express路由器,也可以创建并装载express服务器实例。请参阅详细信息可能需要考虑与API的连接强度。这将是决定您是否真的需要单独服务器的主要因素之一 在回答您的域查询时,如果合适的话,可以使用npm包来帮助创建api子域https://api.example.com,但假设它是一个中小型应用程序,

我有一个Express应用程序服务于前端web应用程序


如何创建以/API作为根的API服务器?我想将API问题从主应用程序中分离出来。

没有最好的方法。这完全取决于你想怎么做。您可以创建并装载express路由器,也可以创建并装载express服务器实例。请参阅详细信息

可能需要考虑与API的连接强度。这将是决定您是否真的需要单独服务器的主要因素之一

在回答您的域查询时,如果合适的话,可以使用npm包来帮助创建api子域
https://api.example.com
,但假设它是一个中小型应用程序,您可以使用Express Router实现您想要的功能。详情见文件

app.use('/api', router);
这将对所有请求应用筛选器,以便只有那些具有
/api
的请求才能到达此路由器,如:

https://www.example.com/api/users/1
事实上,可能有人反对你的应用程序和构建第二台服务器。也就是说,如果您适当地模块化了代码库,那么以后将api路由传输到新服务器应该是轻而易举的事

对于app.use('/api',router),我如何专门针对本地目录结构api/v1/api.js进行调优?或者我应该做/api/v1/[routes.js、db.js等]?如果是,我该怎么做?