仅发回元数据而非完整数据的 HTTP 状态码
HTTP status code for sending back just the meta-data not full data
我正在寻找一个合适的 HTTP 状态代码,告诉接收方正在发送的只是元数据,而不是完整数据。
例如,假设您执行 HTTP GET:
GET /foo?meta_data_only=yes
例如,服务器不会查找完整的数据,只会发回有关端点的一些元数据。是否有可以表示此响应的 HTTP 状态代码?我猜大概在 200 或 300 左右吧?
由于您的元数据在 headers 中返回,我会发送状态代码 204 无内容。
The server has successfully fulfilled the request and that there is no
additional content to send in the response payload body.
Metadata in
the response header fields refer to the target resource and its
selected representation after the requested action was applied.
这听起来与您正在寻找的完全一样:不包含 body 的成功响应,以及 headers 中提供有关资源的额外信息的元数据。
另一件值得注意的事情是,当您只需要元数据时,通常的做法是使用 HTTP 动词 HEAD
。 HEAD
与 GET
非常相似,只是它指定您不想要 body 返回。例如,如果您对图像 url 执行 HEAD,您将收到 204 无内容响应和一些关于文件的元数据,例如 Content-Type、Content-Size,也许是 ETag,但您赢了't 被发送所有的文件数据。许多 Web 服务器(例如 Nginx)支持静态文件的这种开箱即用的行为。我建议您停止使用查询字符串参数,而是实施端点的 HEAD 版本。这将使意图更加清晰和直观。
我正在寻找一个合适的 HTTP 状态代码,告诉接收方正在发送的只是元数据,而不是完整数据。
例如,假设您执行 HTTP GET:
GET /foo?meta_data_only=yes
例如,服务器不会查找完整的数据,只会发回有关端点的一些元数据。是否有可以表示此响应的 HTTP 状态代码?我猜大概在 200 或 300 左右吧?
由于您的元数据在 headers 中返回,我会发送状态代码 204 无内容。
The server has successfully fulfilled the request and that there is no additional content to send in the response payload body.
Metadata in the response header fields refer to the target resource and its selected representation after the requested action was applied.
这听起来与您正在寻找的完全一样:不包含 body 的成功响应,以及 headers 中提供有关资源的额外信息的元数据。
另一件值得注意的事情是,当您只需要元数据时,通常的做法是使用 HTTP 动词 HEAD
。 HEAD
与 GET
非常相似,只是它指定您不想要 body 返回。例如,如果您对图像 url 执行 HEAD,您将收到 204 无内容响应和一些关于文件的元数据,例如 Content-Type、Content-Size,也许是 ETag,但您赢了't 被发送所有的文件数据。许多 Web 服务器(例如 Nginx)支持静态文件的这种开箱即用的行为。我建议您停止使用查询字符串参数,而是实施端点的 HEAD 版本。这将使意图更加清晰和直观。