【问题标题】:How do I separate my REST API from my Express web app? [closed]如何将我的 REST API 与我的 Express Web 应用程序分开? [关闭]
【发布时间】:2015-10-16 04:15:52
【问题描述】:

我有一个 Express 应用程序为前端 Web 应用程序提供服务。

如何创建以 /api 为根的 API 服务器?我想将 API 问题与主应用分开。

【问题讨论】:

    标签: node.js api rest express


    【解决方案1】:

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

    在回答您的域查询时,如果适合https://api.example.com,可以使用 npm 包来帮助创建 api 子域,但假设它是一个中小型应用程序,您可以使用 Express Router 来实现你想要什么。详细信息在文档中here

    app.use('/api', router);
    

    这将对所有请求应用过滤器,以便只有具有/api 的请求才能到达此路由器,例如:

    https://www.example.com/api/users/1
    

    事实上,可能有人反对prematurely optimising 你的应用程序和构建第二个服务器。也就是说,如果您适当地模块化您的代码库,那么稍后将 api 路由转移到新服务器应该是一件轻而易举的事。

    【讨论】:

    • 使用app.use('/api', router),如何针对本地目录结构api/v1/api.js专门调优呢?还是我应该做 /api/v1/[routes.js, db.js, etc.js]?如果是这样,我该怎么做?
    【解决方案2】:

    没有最好的方法。这完全取决于你想怎么做。您可以创建一个快速路由器并挂载它,或者创建一个快速服务器实例并挂载。查看详情here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-18
      • 2018-11-16
      • 2015-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多