我听说过“资源”和“端点”指的是同一件事。似乎资源是一个较新的术语。
它们之间的区别是什么? “资源”是否意味着 RESTful 设计?
Resource 是 终点的 RESTful 子集。
终点本身就是可以访问服务的位置:
https://www.google.com # Serves HTML 8.8.8.8 # Serves DNS /services/service.asmx # Serves an ASP.NET Web Service
资源是指以名称空间的方式提供的一个或多个名词,因为人们很容易理解:
/api/users/johnny # Look up johnny from a users collection. /v2/books/1234 # Get book with ID 1234 in API v2 schema.
以上所有内容都可以被认为是服务端点,但是从 REST 的角度来说,只有底层组才可以被认为是资源。对于它所提供的内容,顶部组没有表达能力。
REST 请求就像一个由 名词(资源)和 动词(HTTP 方法)组成的句子:
GET
johnny
DELETE
1234
端点通常指的是一个服务,但资源可能意味着很多东西。下面是一些依赖于它们所使用的上下文的资源示例。
一些可以帮助你的东西: 图书馆是一种宝贵的资源,他经常利用它。 资源是天然物质,如水和木材 对维持生命很有价值: 地球的资源有限,如果我们不循环利用 我们用完了 资源也是有价值的东西,如金钱或财产,你可以在需要时使用它们: [ pl ]政府没有足够的资源来雇佣 需要教师
一些可以帮助你的东西:
图书馆是一种宝贵的资源,他经常利用它。
资源是天然物质,如水和木材 对维持生命很有价值:
地球的资源有限,如果我们不循环利用 我们用完了 资源也是有价值的东西,如金钱或财产,你可以在需要时使用它们: [ pl ]政府没有足够的资源来雇佣 需要教师
资源也是有价值的东西,如金钱或财产,你可以在需要时使用它们:
[ pl ]政府没有足够的资源来雇佣 需要教师
术语 资源的定义有很多细微的差别,这完全取决于它所使用的 背景。
根据 https://apiblueprint.org/documentation/examples/13-named-endpoints.html是一个 资源,它是给定实体的一个“通用”存储位置——例如/customer/30654/order,而 终点是对给定资源的具体操作(HTTP 方法)。因此一个资源可以有多个端点。
术语 资源和 终点通常是同义词,但实际上它们的意思并不相同。
术语 终点主要关注用于发出请求的 网址。 术语 资源主要关注请求返回的 数据集。
现在,通常可以通过多个 不同的终点访问 同样的资源。 根据查询字符串,同样的终点也可以返回 不同的资源。
让我们看一些例子:
看看以下 不同的终点的例子:
/api/companies/5/employees/3 /api/v2/companies/5/employees/3 /api/employees/3
他们显然都可以在给定的 API 中访问非常 同样的资源。
还可以完全改变现有的 API。这可能导致新的端点使用全新的和不同的 URL 访问相同的旧资源:
/api/employees/3 /new_api/staff/3
如果端点返回集合,则可以使用查询字符串实现搜索/筛选/排序。因此,以下 URL 都使用 同样的终点(/api/companies) ,但它们可以返回 不同的资源(或 资源收集,根据定义,它们本身就是资源) :
/api/companies
/api/companies /api/companies?sort=name_asc /api/companies?location=germany /api/companies?search=siemens
也许我的回答不怎么样,但我要说了。
自从更多地使用基于 HTTP 的真正 RESTful Web 服务以来,我一直试图引导人们避免使用端点这个术语,因为它没有明确的定义,而是使用 REST 语言,即资源和资源位置。
在我看来,端点是 TCP 术语。它与 HTTP 混为一谈,因为 URL 的一部分标识了监听服务器。
所以资源不是一个更新的术语,我不认为,我认为端点总是被挪用,我们意识到,当我们把 REST 作为一个 API 的 风格时。
剪辑
我在博客上写了这个。
Https://medium.com/@lukepuplett/stop-saying-endpoints-92c19e33e819
1. 资源说明 “资源”指的是 API 返回的信息。
2. 端点和方法 端点指示如何访问资源,而方法指示允许与资源的交互(如 GET、 POST 或 DELETE)。
附加信息: 3. 参数 参数是可以通过端点传递的选项(例如指定响应格式或返回的数量) ,以影响响应。
4. 要求举例 请求示例包含一个使用端点的示例请求,其中显示了配置的一些参数。
5. 响应示例和模式 响应示例显示了来自请求示例的一个示例响应; 响应模式定义了响应中所有可能的元素。
来源- 参考链接
考虑一个服务器,其中包含用户、任务和奖励点的信息。
资料来源: API 端点与资源