Chrome扩展程序标识:OAuth2请求失败:服务响应并显示错误:“错误请求”

Gar*_*ima 5 google-chrome-extension google-oauth google-oauth2 google-sheets-api

我完全按照https://developer.chrome.com/extensions/tut_oauth进行操作,但是我被困在

https://developer.chrome.com/extensions/tut_oauth#identity_permission

在执行扩展后,在没有获取令牌的情况下出现以下错误:

Unchecked runtime.lastError while running identity.getAuthToken: 
OAuth2 request failed: Service responded with error: 'bad request'
Run Code Online (Sandbox Code Playgroud)

请指出此错误的可能原因是什么。

pra*_*atZ 13

tl;博士

如果为空,则将范围更新为以下内容,

 "oauth2": {
    "client_id": "yourExtensionOAuthClientIDWillGoHere.apps.googleusercontent.com",
    "scopes":["https://www.googleapis.com/auth/userinfo.email"]
  }
Run Code Online (Sandbox Code Playgroud)

关注OAuth2教程的人:使用 Google 验证用户

如果您遇到此问题,可能是因为现在是 2020 年,文档没有更新。

本教程要求您,

在扩展清单中包含“oauth2”字段。将生成的 OAuth 客户端 ID 放在“client_id”下。现在在“范围”中包含一个空字符串。

{
  "name": "OAuth Tutorial FriendBlock",
  ...
  "oauth2": {
    "client_id": "yourExtensionOAuthClientIDWillGoHere.apps.googleusercontent.com",
    "scopes":[""]
  },
  ...
}
Run Code Online (Sandbox Code Playgroud)

但在调用身份 API 调用以获取令牌之前永远不会更新它。

更新范围,使用以下内容应该可以解决问题,

"scopes": ["https://www.googleapis.com/auth/userinfo.email"]
Run Code Online (Sandbox Code Playgroud)


Moh*_*nna 7

我认为这是因为范围是空的。我就像您关注本文,但发现问题出在范围区域。