【问题标题】:Express.js - req.query vs req.paramsExpress.js - req.query 与 req.params
【发布时间】:2018-07-11 03:31:03
【问题描述】:

在您将此标记为重复之前,请理解我无法从其他答案中获得我正在寻找的解释。

如果我正在制作一个基于 URL id 寻找客户的应用程序,那么使用 customers/1234 和使用 req.paramscustomers?id=1234 和使用 req.query 有什么区别?这两种 url 数据方法有什么不同?

【问题讨论】:

    标签: node.js http express url-routing express-router


    【解决方案1】:

    性能或功能没有任何区别。是关于特定于宁静与非宁静网址的标准。通常在 RESTful 服务上,资源标识部分位于路径上,查询或搜索用于过滤目的。这被认为是一种良好做法,而且是惯例。除了更易于阅读和识别之外,它背后没有实际的技术原因。您可以在诸如

    之类的地方了解更多信息

    https://restfulapi.net/resource-naming/

    http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api

    https://hackernoon.com/restful-api-designing-guidelines-the-best-practices-60e1d954e7c9

    等等。 这完全取决于您要构建的内容以及您希望与标准保持多近

    【讨论】:

      【解决方案2】:

      是一样的,但是customers/1234 在 URL 中比 customers?id=1234 更漂亮。

      这取决于您喜欢什么,但是如果您比较网站,您会发现其中许多网站都使用第一种语法。以 Stackoverflow 为例。

      【讨论】:

        【解决方案3】:

        根据express docs,看起来req.queryreq.params 之间的区别就像您提到的那样,因为它们是实现相似最终结果的不同方式。您选择哪种方式实际上只是您个人对如何将数据传递给 Express 的偏好问题。

        【讨论】:

          猜你喜欢
          • 2019-03-26
          • 2021-07-04
          • 2016-05-03
          • 2021-10-02
          • 2019-07-21
          • 2014-08-19
          • 2020-12-04
          • 1970-01-01
          • 2013-07-15
          相关资源
          最近更新 更多