当用户未配置payment
时,接受POST
的{{1}}端点应拒绝请求。在这种情况下,正确的HTTP状态代码是什么?
当系统本身无法达到请求所要求的状态并且必须首先完成另一个请求(创建付款方式)时,要引发的正确HTTP状态代码是什么?
我查看了payment methods
,但这似乎与标题有关,而不是系统状态。
答案 0 :(得分:2)
我会简单地使用400 Bad Request
。如果您在响应中需要更具体的说明或提示,则可以返回一个正文,该正文将指出错误的确切性质。
您不需要为所有与内部业务相关的错误案例分配特定的HTTP错误代码。事实上,这可能是不可能的。
400上的规范:https://tools.ietf.org/html/rfc7231#section-6.5.1
来自那里的相关引言:
表示服务器由于被认为是客户端错误而无法或不会处理请求
关于4xx
代码:
服务器应该发送一个包含错误情况解释的表示,以及它是暂时的还是永久的
答案 1 :(得分:0)
您是否查看了错误424 Failed_Dependency?我想这可能是你想要的。
请参阅 http://www.restpatterns.org/HTTP_Status_Codes/424_-_Failed_Dependency