422错误中的'semantic errors'或'semantically erroneous'是什么意思?
What is the meaning of 'semantic errors' or 'semantically erroneous' in 422 errors?
我正在查看 Rails 教程中与安全相关的高级 Ruby,它讨论的是 "the client submitted request was well formed but semantically invalid" 的 422 HTTP 响应。我还看到后半部分呈现为 'semantic errors' 或 'semantically erroneous'.
在给出的示例中,这是由于 Rails 检查真实性令牌,但我明显觉得 HTTP 响应还有很多内容。
我将特别感谢一位已建立的社区成员关于 'semantically invalid/errors/erroneous' 的含义的规范定义。使请求格式正确但语义无效的一般规则是什么?
一个422
(无法处理的实体)状态代码被给出表明服务器理解请求,但是无法处理逻辑.
它可用于表示 逻辑问题(例如,您要求过滤的日期范围无效)和验证问题(例如,您没有指定标题 - 这是必需的)。 "Semantic error" 在这种情况下仅表示 "logic error".
这将它与缺乏权限之类的事情区分开来(401
或 403
更合适),也与一般的 400
状态区分开来,后者可以指示服务器不能'不理解该请求(即它是格式错误的请求)。
我在通过邮递员将资源发布到数据库时遇到了这个特殊的语义错误。
在彻底检查我发送的有效载荷后,我发现 Json 有效载荷没有数据库架构所期望的正确格式。例如,我的负载中有一个字符串值而不是字符串数组。后来发布成功,回复201
我正在查看 Rails 教程中与安全相关的高级 Ruby,它讨论的是 "the client submitted request was well formed but semantically invalid" 的 422 HTTP 响应。我还看到后半部分呈现为 'semantic errors' 或 'semantically erroneous'.
在给出的示例中,这是由于 Rails 检查真实性令牌,但我明显觉得 HTTP 响应还有很多内容。
我将特别感谢一位已建立的社区成员关于 'semantically invalid/errors/erroneous' 的含义的规范定义。使请求格式正确但语义无效的一般规则是什么?
一个422
(无法处理的实体)状态代码被给出表明服务器理解请求,但是无法处理逻辑.
它可用于表示 逻辑问题(例如,您要求过滤的日期范围无效)和验证问题(例如,您没有指定标题 - 这是必需的)。 "Semantic error" 在这种情况下仅表示 "logic error".
这将它与缺乏权限之类的事情区分开来(401
或 403
更合适),也与一般的 400
状态区分开来,后者可以指示服务器不能'不理解该请求(即它是格式错误的请求)。
我在通过邮递员将资源发布到数据库时遇到了这个特殊的语义错误。
在彻底检查我发送的有效载荷后,我发现 Json 有效载荷没有数据库架构所期望的正确格式。例如,我的负载中有一个字符串值而不是字符串数组。后来发布成功,回复201