JSON-API - 使用自定义 HTTP header 或 'product-code' 的元信息

JSON-API - use custom HTTP header or meta information for 'product-code'

我工作的公司有几种产品消耗共享 APIs。之前我们将 'product-code' 作为自定义 HTTP header 传递。它通常仅用于确定 product-specific API 键,或包含在某些日志消息中等。它通常不会持久保存到数据库中。

最近我们开始采用 JSON-API 规范来构建 APIs。

建议是使用 meta information 来指定 'product-code',还是将其保留为自定义 HTTP header?

干杯。

Would the recommendation be to use meta information to specify the 'product-code', or to keep this as a custom HTTP header?

使用带有实现 JSON:API specification.

的 API 的自定义 HTTP header 完全没问题

meta 属性 允许包含基于每个 JSON:API 文档、每个资源 object 或每个资源关系 object 的元信息。它只能包含在请求和响应中,其中包含一个 JSON:API 文档。

您的用例不适合 meta 属性。如果我从您的评论中得到它,应该可以在每个请求中包含 product-code 信息。但并非所有请求都有 JSON:API 文档,您可以在 meta 部分包含它。例如,对于资源的获取 (GET) 和删除请求都不包含 JSON:API 文档作为请求 body.