javascript - 通过 Google API OAuth2 对用户进行身份验证以使用 Chrome 扩展程序

标签 javascript google-chrome google-chrome-extension youtube

我目前正在尝试制作一个 google chrome 扩展程序,如果您在 Reddit 上点赞某个 YouTube 视频,它就会“喜欢”或“喜欢”该视频。显然,您需要用户登录并验证该用户的身份,以便您可以喜欢或收藏该视频。

我的问题是我到底该怎么做?我尝试过进行一些研究,但我仍然完全不知道用户身份验证的来源或用户如何登录(如果还没有)。我假设我需要使用 OAuth2 才能喜欢 YouTube 上的视频,但如何在我的扩展中实现它?

到目前为止,我所拥有的只是 content.js 和 manifest.json:

    {
      "name": "VideoUpLike",
      "version": "1.0.0",
      "description": "Likes the video on YouTube after upvoting a YouTube link on Reddit",
      "manifest_version": 2,
      "permissions": [
        "https://www.googleapis.com/*"
      ],
      "content_scripts": [
        {
          "matches": ["http://www.reddit.com/*", "https://www.reddit.com/*"],
          "js" : [ "contentscript.js"]
        }],
      "background": {
        "page": ["Auth.html"]
      }
    }

和我的文本 content.js 脚本来测试点赞按钮点击:

    document.addEventListener('click', function(e) {
        if (e.target.matches('.arrow.upmod')) {
            alert("Oh hi there");
            }
    });

最佳答案

您可以使用 Chrome Identity API 对 Chrome 扩展程序的用户进行身份验证。步骤是:

  1. 向您的 list 添加权限并上传您的应用。
  2. 将已安装的 list .json 中的 key 复制到源 list ,以便 3. 您的应用 ID 在开发过程中保持不变。
  3. 获取您的 Chrome 应用的 OAuth2 客户端 ID。
  4. 更新您的 list 以包含客户端 ID 和范围。
  5. 获取身份验证 token 。

(来自 https://developer.chrome.com/apps/app_identity )

我发现这个视频对于了解如何在代码中实现这一点非常有用:https://www.youtube.com/watch?v=oeUMKlCTdHg

最后,Google 在 github 上还有一些示例项目,可能值得一看 - 我无法发布更多链接,但您可以通过搜索找到它们。

关于javascript - 通过 Google API OAuth2 对用户进行身份验证以使用 Chrome 扩展程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38840272/

相关文章:

css - 不同浏览器中的阴影框

html - 解决 Chrome 中的 RTL children ordering

javascript - 在 Chrome 扩展中使用图像 Sprite 有意义吗?

javascript - 观察 Vue Observable 中的变化

javascript - 结果中不显示连接的空格

javascript - 如何在数组循环中执行 promise

javascript - 解析云代码 : Delete All Objects After Query

javascript - 网页包 + react : Module parse failed: Unexpected token: You may need an appropriate loader

android - 使用 HTML5 启用后置摄像头

Javascript 在 Chrome 扩展中打开多个选项卡