gpt4 book ai didi

validation - 哪个更好? 403 状态代码或 422 状态代码以及验证和身份验证失败的负载?

转载 作者:行者123 更新时间:2023-12-05 03:12:12 24 4
gpt4 key购买 nike

POST/api/teams

{
"name": "",
"leagueId": 1
}

规则:

  1. 姓名为必填项
  2. leagueId 是必需的
  3. 经过身份验证的用户应该是创建的球队将关联到的联赛的所有者。

假设经过身份验证的用户无权访问 leagueId,因为用户不是所有者,返回 403 响应是否更好(注意名称字段的规则也不满足)?或者最好返回 422 状态代码和此有效负载:

{
"errors": [
{
"field": "name",
"message": "Name is required."
},
{
"field": "leagueId",
"message": "User is not the owner of the league."
}
],
"message": "Validation Failed"
}

最佳答案

当所需字段不存在时,我会返回一个 400 错误请求,因为请求不满足隐式契约。

如果经过身份验证的用户不是联盟的所有者,我将返回 403 Forbidden,因为这表明用户由于他/她的身份而不允许这样做。

关于validation - 哪个更好? 403 状态代码或 422 状态代码以及验证和身份验证失败的负载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34553636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com