我有一个可能很简单的问题,但是我找不到很好的解释的答案:
在Node.js
/ {{1内开发的RESTful API中,路由和端点之间有什么区别(如果有) }}应用程序(但是这些概念可能更广泛?!...)?
(它是否以某种方式与URL有关?)
例如,在本文:https://medium.com/@purposenigeria/build-a-restful-api-with-node-js-and-express-js-d7e59c7a3dfb中,我们可以阅读:
我们导入了我们在课程开始时安装的Express,app.get向服务器发出了获取请求,并以 route / endpoint 作为第一个参数,端点旨在返回数据库中的所有待办事项。
这些概念可以互换使用,这让我感到困惑。
(请注意,我是REST API,nodejs和express的100%初学者,但我会尽力学习。)
修改:
前两个答案使我更加困惑,因为它们完全是对立的。
答案 0 :(得分:14)
这里有3个不同的概念:
{id: 42, type: employee, company: 5}
localhost:8080/employees/42
GET localhost:8080/employees/42
对于同一路由,您可以具有不同的端点,例如DELETE localhost:8080/employees/42
。所以端点基本上是动作。
您还可以通过不同的路由(例如localhost:8080/companies/5/employees/42
)访问相同的资源。因此,路由是一种定位资源的方法。
答案 1 :(得分:2)
端点基本上用于执行特定任务,并返回数据,端点是路由的一部分。
例如https://stackoverflow.com/questions/56075017/difference-between-route-and-endpoint
是路线,而这个https://stackoverflow.com/questions/56040846/how-to-use-the-classweight-option-of-model-fit-in-tensorflow-js
也是一条路线,但是这里两个都返回不同的数据,所以我们可以说这里的最后两个参数是结束符点表示ID和问题字符串。
端点:
/56075017/difference-between-route-and-endpoint
/56040846/how-to-use-the-classweight-option-of-model-fit-in-tensorflow-js
路线:
https://stackoverflow.com/questions/56075017/difference-between-route-and-endpoint
https://stackoverflow.com/questions/56040846/how-to-use-the-classweight-option-of-model-fit-in-tensorflow-js
答案 2 :(得分:2)
http://www.mywebsite.com/
GET http://www.mywebsite.com/Products
Route 是 URI,端点 是对 URI 执行的操作。
答案 3 :(得分:0)
端点:端点是用于执行特定任务或功能的URL。(例如:https://localhost:3000/route)
路由:它是URL端点的一部分,可将页面路由到不同的组件。(例如:https://localhost:3000 / thisIsRoute )
答案 4 :(得分:0)
路由和端点是相关的概念-没有其他概念就无法拥有一个。
通常来说,“端点”是one end of a communication channel,其中一个系统与另一个系统进行交互。该术语在networking中也类似使用。
对于典型的Web API,端点是URL,API文档中对它们进行了描述,以便程序员知道如何使用/使用它们。例如,特定的Web API可能具有以下端点:
GET https://my-api.com/Library/Books
这将返回图书馆中所有书籍的列表。
“路线”通常是matches incoming request paths to resources的代码。换句话说,它定义了URL以及将执行的代码。路由路径可能包含正则表达式,模式,参数,并涉及验证。例如,考虑以下路径:
"{controller}/{action}/{id?}"
在ASP.NET中,应用了模式匹配,因此GET https://my-api.com/Library/Books/341
将在Books
类上调用Library
公共方法,并传递参数341
。路由框架可以非常灵活和通用。
端点的最简单示例是将要使用的文件(例如data.json
)放入Web服务器的public_html
文件夹中。 GET https://my-api.com/data.json
可以达到此目的。路由由Web服务器开箱即用地处理,不需要路由代码。
接下来要阅读的一些好东西: