【问题标题】:How to make a clean architecture for RestAPI on NodeJs如何在 Node Js 上为 Rest API 创建一个干净的架构
【发布时间】:2014-01-09 10:44:03
【问题描述】:

我正在考虑将一些 REST 服务转移到 NodeJS。我唯一担心的是这种解决方案的架构。

它是否存在于某个指导方针的某个地方?当然,我看到了一些像 restify 这样的库。这是一个好的开始,但还不够。

我正在寻找层的分离、依赖注入、单元测试、csrf 等等。

【问题讨论】:

  • restify 怎么算“不够”?可以使用许多测试工具编写测试mocha,jasmine ..
  • RestAPI、NodeJs 和任何框架都只是工具,而不是架构......youtube.com/watch?v=WpkDN78P884

标签: node.js api rest architecture restify


【解决方案1】:

看这里:http://nodeframework.com/

这是用于各种用途的 Nodejs 框架列表。你会显示网页吗?您可能会选择其中一种 MVC 模型。只是创建一个 API?您只需要其中一个 REST API 框架。

日志记录、单元测试、文档样式等的选择并不特定于 Node(尽管它相对较新)。有多个单元测试框架、日志框架、文档样式/框架等。这适用于 Node 以及 Java、C++ 和其他流行语言。这些框架的开发人员试图让他们的软件“轻松”地使用——因为您不会被多个依赖项束缚,可以交换其他部分,轻松集成等等。

如果您正在寻找一体化解决方案,我怀疑您会找到它。因为每个人都有不同的品味,解决方案的每个部分都有几个选项,您可以选择适合您(以及您的要求/客户)的部分。 这一次行得通的可能不是下一次的最佳选择。

我建议在网上寻找一个与您尝试做的事情相近的示例,然后按照他们的示例或从他们的演示中构建,使用相同的模块。

编辑:在第一个链接之后,有一个来自 Joyent here 的已弃用框架列表。

Edit2: Joyent 列表中的This particular part 可能对您有用。 也许“样板”样式的模块会帮助您进行搜索。

【讨论】:

    【解决方案2】:

    您可以查看此帖子: https://solidgeargroup.com/clean-architecture-in-nodejs

    讨论了清洁架构的一些模式,例如创建适配器层以将业务逻辑与框架隔离,使代码更具可重用性和可测试性..

    包含用于连接 REST 和 GraphQL API 的代码示例。也用于单元测试和 mongo db 连接

    【讨论】:

      【解决方案3】:

      看看这个:https://github.com/neiesc/ListOfMinimalistFrameworks#web-framework-for-nodejs

      我使用过 express 和 Koa,它们都非常适合 REST 架构。

      还有 Restify 和许多其他框架,可以轻松构建干净的 REST API。

      这些框架中的大多数都支持测试、依赖注入等。我建议尝试 Express.js,因为它是最好的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-05-02
        • 1970-01-01
        • 2021-12-22
        • 2018-11-17
        • 2014-03-04
        • 1970-01-01
        • 2019-03-28
        相关资源
        最近更新 更多