异常返回范例
{
"error": "invalid_request"
"error_description": "device_id is required"
}
其中“error”字段为异常错误的代码,“error_description”为异常错误的可读描述文本,对接时注意“error_description”字段不是一定返回的。
标准的错误代码
以下是Oauth2标准的错误代码:
invalid_request
状态代码:HTTP 400
该请求缺少必需的参数、包含不支持的参数值(授权类型除外)、重复参数、包含多个凭据、使用一种以上的机制来验证客户端,或者请求格式不正确。
注意:
- 返回 “error_description”值为 “device_id is required”,这表示在grant_type为”password”时,请求必须带上”device_id”值。
invalid_client
状态代码:HTTP 401
客户端身份验证失败(例如,未知客户端、不包含客户端身份验证或不支持的身份验证方法)。 此时服务器返回 HTTP 401(未授权)状态代码。
invalid_grant
状态代码:HTTP 400
提交的客户端身份认证授权(例如,授权code、资源所有者身份凭据)或刷新令牌无效、已过期、已撤销、与授权请求中使用的重定向 URI 不匹配,或已派发给另一个客户端。
unauthorized_client
状态代码:HTTP 400
该客户端的身份验证无权使用该grant类型。
unsupported_grant_type
状态代码:HTTP 400
服务器不支持该grant类型。
invalid_scope
状态代码:HTTP 400
请求的scope无效或scope的格式错误或超出资源所有者授予的范围。
参考文档链接:https://datatracker.ietf.org/doc/html/rfc6749#section-5.2