跳至主要内容

排查 OAuth 应用访问令牌请求错误

在将代码交换为访问令牌时,可能会发生其他错误。这些响应的格式由您传递的 accept 标头决定。

注意:这些示例仅显示 JSON 响应。

不正确的客户端凭据

如果您传递的 client_id 或 client_secret 不正确,您将收到此错误响应。

{
  "error": "incorrect_client_credentials",
  "error_description": "The client_id and/or client_secret passed are incorrect.",
  "error_uri": "/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors/#incorrect-client-credentials"
}

要解决此错误,请确保您拥有 OAuth 应用的正确凭据。仔细检查 client_idclient_secret,确保它们正确且正确传递给 GitHub。

重定向 URI 不匹配

如果您提供的 redirect_uri 与您在 OAuth 应用中注册的 URI 不匹配,您将收到此错误消息。

{
  "error": "redirect_uri_mismatch",
  "error_description": "The redirect_uri MUST match the registered callback URL for this application.",
  "error_uri": "/apps/managing-oauth-apps/troubleshooting-authorization-request-errors/#redirect-uri-mismatch2"
}

要更正此错误,请提供与您注册的 URI 匹配的 redirect_uri,或者省略此参数以使用与您的应用程序注册的默认 URI。

无效的验证码

如果您传递的验证码不正确、已过期或与您在第一个授权请求中收到的验证码不匹配,您将收到此错误。

{
  "error": "bad_verification_code",
  "error_description": "The code passed is incorrect or expired.",
  "error_uri": "/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors/#bad-verification-code"
}

要解决此错误,请重新开始 OAuth 授权流程 并获取新的代码。

未验证的用户电子邮件

如果您尝试为未在 GitHub 上验证其主要电子邮件地址的用户生成用户访问令牌,您将收到此错误。

{
  "error": "unverified_user_email",
  "error_description": "The user must have a verified primary email.",
  "error_uri": "/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors/#unverified_user_email"
}

要解决此错误,请提示用户验证其 GitHub 帐户上的主要电子邮件地址。有关更多信息,请参阅“验证您的电子邮件地址”。