如何使用HTTP 412代码

如何使用HTTP 412代码,http,rest,Http,Rest,我正在开发一个RESTful web服务。web服务从客户端接收XML,它应该拒绝一些错误请求,这些错误请求包含一些与我们的业务逻辑相关的错误(例如,支付值低于最小值)。如果拒绝请求,定制的错误代码和错误消息将写入响应XML(在http响应体中)。我还想在状态行中返回一个HTTP代码,这样客户端就可以立即识别拒绝,而无需查看响应boday。一些人建议使用HTTP代码412,但是通过查看HTTP 412的定义: 412先决条件失败 在服务器上测试时,一个或多个请求标头字段中给定的前提条件被评估为f

我正在开发一个RESTful web服务。web服务从客户端接收XML,它应该拒绝一些错误请求,这些错误请求包含一些与我们的业务逻辑相关的错误(例如,支付值低于最小值)。如果拒绝请求,定制的错误代码和错误消息将写入响应XML(在http响应体中)。我还想在状态行中返回一个HTTP代码,这样客户端就可以立即识别拒绝,而无需查看响应boday。一些人建议使用HTTP代码412,但是通过查看HTTP 412的定义:

412先决条件失败

在服务器上测试时,一个或多个请求标头字段中给定的前提条件被评估为false。此响应代码允许客户端对当前资源元信息(标头字段数据)设置前提条件,从而防止请求的方法应用于预期资源以外的资源


我不太明白它代表什么。有人能解释一下412的正确用法吗?或者在这种情况下有更好的选择吗?

它用于条件请求:

您可能需要查看422或409