Express.js - req.query vs req.params

时间:2018-01-31 21:52:18

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

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

如果我根据网址ID创建了一个寻找客户的应用,那么说customers/1234和使用req.paramscustomers?id=1234并使用{{1}有什么区别? }?两个url数据方法的作用有何不同?

3 个答案:

答案 0 :(得分:5)

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

等地方了解更多相关信息

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

其中。 这完全取决于你想要建立什么,以及你想要保持多么接近标准

答案 1 :(得分:0)

根据express docsreq.queryreq.params之间的差异正如您所提到的那样,因为它们是实现类似最终结果的不同方式。你选择的只是你个人喜欢将数据传递给Express的问题。

答案 2 :(得分:0)

它是相同的,但customers/1234比网址中的customers?id=1234更漂亮。

这取决于您的喜好,但如果您比较网站,您会看到其中许多人使用第一种语法。以Stackoverflow为例。