Chrome 扩展清单 v3 MV3 身份验证

Ron*_*yan 10 google-chrome google-chrome-extension google-signin manifest.json chrome-extension-manifest-v3

我需要使用清单版本 3(MV3) 来处理 Chrome 扩展上的 Google 登录。鉴于文档中只提到它无法完成,我该怎么办?

小智 14

目前,对于清单 v3,我们无法使用 google 标志弹出窗口来授权用户。我们应该使用chrome.identity API 通过 OAuth2 API 服务对用户进行身份验证。我已经使用谷歌云平台创建了Oauth2客户端ID和令牌。让我向您展示逐步过程:

\n
    \n
  1. 使用谷歌云创建项目

    \n
  2. \n
  3. 创建项目后,您必须为该项目创建凭据。转到凭据部分并选择 OAuth 客户端 ID
    \n在此输入图像描述

    \n
  4. \n
  5. 下一步是获取您的扩展 ID,您可以在 chrome://extensions 页面轻松找到该 ID在此输入图像描述

    \n
  6. \n
  7. 现在,在“创建 OAuth 客户端 ID”部分中,选择 \xe2\x80\x9cChrome app\xe2\x80\x9d 作为 OAuth 2.0 客户端的应用程序类型,并将您的扩展程序 ID 粘贴到“应用程序 ID”字段中\n在此输入图像描述

    \n
  8. \n
  9. 创建后,您将获得需要在我们的manifest.json文件中使用的client_id。

    \n
  10. \n
\n
\n
"oauth2": {\n        "client_id": "<YOUR_CLIENT_ID>.apps.googleusercontent.com",\n        "scopes": []\n      }\n
Run Code Online (Sandbox Code Playgroud)\n
\n
    \n
  1. 要访问 chrome 扩展程序中的 chrome.identity API,请按照权限部分添加身份
  2. \n
\n
\n

"权限": [\n"身份"\n]

\n
\n
    \n
  1. 最后,您可以使用以下方法触发API
  2. \n
\n

\r\n
\r\n
"oauth2": {\n        "client_id": "<YOUR_CLIENT_ID>.apps.googleusercontent.com",\n        "scopes": []\n      }\n
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n

欲了解更多信息,请查看此处的文章

\n