首页 > 解决方案 > 响应中的幂等 POST 方法标头

问题描述

我正在实现一个幂等 POST 方法。所以在请求中,我有一个强制性的标头 X-Request-Id。
在后端,我正在检查是否有具有相同 X-Request-Id 系统的追索权正在返回现有系统而不是创建新资源。

我的问题是。是否有任何标准响应标头,在已创建资源的情况下应返回该标头?

标签: restpostheaderidempotent

解决方案


我认为这方面没有任何标准。

如果从您的设计 POV 来看,这应该表示成功(尽管是一个特殊的),那么我将使用 201(即 CREATED)进行第一次调用,使用 200(即 OK)进行后续调用。

如果您将其视为错误(尽管我觉得它很奇怪),那么我会为第一次调用选择 200(即 OK),为后续调用选择 409(即 CONFLICT)。

无论您选择哪一个,正如您已经知道的,最重要的是在您的 API 中保持一致和可预测。

关于状态码的 MDN:https ://developer.mozilla.org/en-US/docs/Web/HTTP/Status


推荐阅读