HTTP 状态代码。空参数的最佳状态代码是什么?
HTTP status code. What is the best status code for an empty parameter?
我正在用 Django Rest Framework 编写 API。
我有一个接受一个 'email' 参数的密码重置端点。
如果 header 中有键 'email',但值为空字符串怎么办?
key: 'email'
value: ''
我应该 return 什么状态码? 400,或者 204?
编辑:我忘了说这不应该是验证失败。此端点不需要授权。这仅用于发送密码重置电子邮件。
HTTP 状态只是标准,您可以调整它们以适合您。 204 no content 一般用在没有返回响应体的时候,所以你希望能够从服务器响应"no email provided whatever error massege"。在 DRF 中,在成功的 DELETE 请求后返回 204(默认),当实体在服务器上被删除时,因此没有留下任何内容。
在你的情况下,我会选择 400。http://www.restapitutorial.com/httpstatuscodes.html 特别提到 "missing data" 作为错误 400 错误请求使用的示例,这可能正是你的情况。
我正在用 Django Rest Framework 编写 API。
我有一个接受一个 'email' 参数的密码重置端点。 如果 header 中有键 'email',但值为空字符串怎么办?
key: 'email'
value: ''
我应该 return 什么状态码? 400,或者 204?
编辑:我忘了说这不应该是验证失败。此端点不需要授权。这仅用于发送密码重置电子邮件。
HTTP 状态只是标准,您可以调整它们以适合您。 204 no content 一般用在没有返回响应体的时候,所以你希望能够从服务器响应"no email provided whatever error massege"。在 DRF 中,在成功的 DELETE 请求后返回 204(默认),当实体在服务器上被删除时,因此没有留下任何内容。
在你的情况下,我会选择 400。http://www.restapitutorial.com/httpstatuscodes.html 特别提到 "missing data" 作为错误 400 错误请求使用的示例,这可能正是你的情况。