API 和 routes/endpoints 有什么区别?
What is the difference between an API and routes/endpoints?
我是网络世界的新手,我刚刚阅读 difference between a route and an endpoint。
我知道 API 的定义。但是 API 和路由(端点)有什么区别?
在我看来,当有人说“构建一个 API”或根据我看过的 YouTube 教程时,他们只是使用 Express.js 或 Flask 之类的 Web 框架构建一个路由'/hello'
,其中 returns "hello"
。
如果那是 API,API 和路由可以互换吗?例如,如果我有 3 条路线:'/hello'
、'/users'
、'/users/<userId>'
。我可以说我有 3 APIs 吗?
简而言之:
- API 是关于使用 JSON 或 XML(通常)处理数据 input/output 数据(没有任何 UI) 的 CRUD 操作。 API 应该遵循一些规则和结构。例如:
GET /{entity_type}/{entity_id}
表示此方法将尝试获取具有传递类型和 id 的实体
- endpoint 可能是一个 API(它们通常拼写在一起,如“API endpoint”)但同时它可能只是一个URL 在没有对任何数据进行显式操作的情况下通向某处,例如,trigger/webhook/gateway 等
- route 是一些 website/page/controller 具有有意义的名称与用户交互的路径。 Route 接收一些用户输入(处理用户操作)并以方便的方式表示一些结果(例如,呈现标记)。
TL;DR
API,端点和路由可以互换,但存在细微差别。
长读
API 与网络 API 世界一样,由 URI 或 REST 端点表示。最好从编程类比来理解。以Java API规范为例,classes和包中聚合了方法。您可能认为 class 是 API 但实际上您调用了它的方法。
同样,“/users”也可以称为“users”API。这也是一个端点。您需要阅读其规范以了解其用法。此 API 可以有更多相关的 REST 端点。例如 - “/users/{id}”或“/users/admin/”。所有这些都有自己的规范。总的来说,它成为一份 API 文档的一部分。
API通常是定义词,Endpoint或route是物理表示。当有人说“构建一个 API”时,这意味着您必须定义其规范,例如协议、request/response 架构、(可能)安全凭证和(当然)要命中的端点。
我是网络世界的新手,我刚刚阅读 difference between a route and an endpoint。
我知道 API 的定义。但是 API 和路由(端点)有什么区别?
在我看来,当有人说“构建一个 API”或根据我看过的 YouTube 教程时,他们只是使用 Express.js 或 Flask 之类的 Web 框架构建一个路由'/hello'
,其中 returns "hello"
。
如果那是 API,API 和路由可以互换吗?例如,如果我有 3 条路线:'/hello'
、'/users'
、'/users/<userId>'
。我可以说我有 3 APIs 吗?
简而言之:
- API 是关于使用 JSON 或 XML(通常)处理数据 input/output 数据(没有任何 UI) 的 CRUD 操作。 API 应该遵循一些规则和结构。例如:
GET /{entity_type}/{entity_id}
表示此方法将尝试获取具有传递类型和 id 的实体
- endpoint 可能是一个 API(它们通常拼写在一起,如“API endpoint”)但同时它可能只是一个URL 在没有对任何数据进行显式操作的情况下通向某处,例如,trigger/webhook/gateway 等
- route 是一些 website/page/controller 具有有意义的名称与用户交互的路径。 Route 接收一些用户输入(处理用户操作)并以方便的方式表示一些结果(例如,呈现标记)。
TL;DR
API,端点和路由可以互换,但存在细微差别。
长读
API 与网络 API 世界一样,由 URI 或 REST 端点表示。最好从编程类比来理解。以Java API规范为例,classes和包中聚合了方法。您可能认为 class 是 API 但实际上您调用了它的方法。
同样,“/users”也可以称为“users”API。这也是一个端点。您需要阅读其规范以了解其用法。此 API 可以有更多相关的 REST 端点。例如 - “/users/{id}”或“/users/admin/”。所有这些都有自己的规范。总的来说,它成为一份 API 文档的一部分。
API通常是定义词,Endpoint或route是物理表示。当有人说“构建一个 API”时,这意味着您必须定义其规范,例如协议、request/response 架构、(可能)安全凭证和(当然)要命中的端点。