RESTful API设计-响应http代码

RESTful API设计-响应http代码,rest,Rest,我需要有2个行动电话使用后 VerifyCerts不需要参数。在后端,它验证2个文件(先前上载)是否正确。如果出现错误,我应该返回什么?我的意思是应该是http状态码4xx还是200以及内容中的错误信息 ApllyCerts也不需要参数。它尝试应用已上载的证书文件。当出现错误(文件不正确)时,我应该返回什么4xx代码?响应体中应该是什么?因为这些不需要任何参数意味着验证和应用程序启动不需要输入,所以错误应该是500 HTTP状态500 响应正文(json或文本) { 错误代码:“FileNOt

我需要有2个行动电话使用后

VerifyCerts
不需要参数。在后端,它验证2个文件(先前上载)是否正确。如果出现错误,我应该返回什么?我的意思是应该是http状态码4xx还是200以及内容中的错误信息


ApllyCerts
也不需要参数。它尝试应用已上载的证书文件。当出现错误(文件不正确)时,我应该返回什么4xx代码?响应体中应该是什么?

因为这些不需要任何参数意味着验证和应用程序启动不需要输入,所以错误应该是500

HTTP状态500 响应正文(json或文本) { 错误代码:“FileNOtFound”.等 }

VerifyCerts
不需要参数。在后端,它验证2个文件(先前上载)是否正确。如果出现错误,我应该返回什么?我的意思是应该是http状态码4xx还是200以及内容中的错误信息

记住,HTTP对“动作调用”一无所知。它了解资源以及资源的表示。但实施细节被刻意隐藏

在这里,听起来您有一个资源,该资源的表示是根据存储在服务器上的数据计算出来的。因此,我希望响应会伴随一个
2xx
代码,即使这两个文件当前“无效”

(请求没有问题,服务器没有问题,您只是记录了当前世界状态与快乐路径不一致)

ApllyCerts也不需要参数。它尝试应用已上载的证书文件。当出现错误(文件不正确)时,我应该返回什么4xx代码?身体应该有什么反应

响应体是最简单的部分-

除响应HEAD请求外,服务器应发送一个表示,其中包含对错误情况的解释,以及错误是暂时的还是永久性的

响应代码更难。我认为你可以为和提出合理的理由;实际上,客户机的请求是试图将资源从状态A转移到状态B,但实际上资源当前处于状态Z,而状态Z没有转换到状态B

在实践中,我认为这并不重要——默认情况下,这两个响应代码都是不可缓存的,普通消费者没有任何特殊的理由以不同的方式处理这些代码,等等。我看不出语义上的区别有任何实际效果


因此,如果后来有人说服您更改使用哪一个,我不认为通用客户端的行为会有任何不同。

为什么会出现内部服务器错误?服务器没有问题。这是用户的错。