gpt4 book ai didi

rest - 有没有一种标准方法可以在 HTTP header 字段中定义 CURIE?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:25:58 25 4
gpt4 key购买 nike

最近,我在设计一个 RESTful API,我想使用 Link头字段来实现 HATEOAS。

这一切都很好,没有任何实际问题,但我想让 API 的客户端更容易。

Link例如标题可能看起来像这样:

Link: <https://api.domain.com/orders/{id}>; rel="https://docs.domain.com/order"

在这种情况下,客户端必须通过搜索 https://docs.domain.com/order 来找到链接。 rel 中的值属性。

这行得通,但由于文档的 URI 可能会改变,因此它很脆弱,而且由于它的长度,它作为搜索键有点不切实际。

所以我想尝试使用 CURIE 来代替它:

Link: <https://api.domain.com/orders/{id}>; rel="[rc:order]"

这样一来,URI 更改的问题在很大程度上得到了缓解,而且它更加紧凑,便于客户端进行搜索。

我的问题是,因为我使用的是 Link header 字段来实现 HATEOAS 我觉得将 CURIE 作为 HTTP header 字段也包括在内是最一致的,而不是在响应正文中引入元数据。

由于整个 API 对其所有元数据(分页、版本控制等)都使用标准 HTTP header 字段和状态代码,因此我宁愿不将元数据引入响应正文来定义 CURIE。

但是如果我使用 HTTP header 字段,我应该将哪个字段用于 CURIE?

是否有一种标准方法可以使用 HTTP header 字段执行此操作?

如果不是,我是否应该只使用自定义 header 字段,例如 X-Curie: <https://docs.domain.com>; name="rc" , 并在某处为客户记录下来?

我环顾四周发现大多数资源都引用了 XML 或 HAL 标准,因此如果能提供任何与 HTTP header 字段相关的信息,我们将不胜感激。

最佳答案

不,你不能那样做。链接关系是一个字符串 - 仅此而已。

您应该问自己的问题是,为什么您一开始就使用不稳定的链接关系名称...

关于rest - 有没有一种标准方法可以在 HTTP header 字段中定义 CURIE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40573270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com