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/

相关文章:

javascript - 仅在每组奇数数字之前和之后添加破折号

javascript - D3.JS 添加缩放和列表项到矩形

javascript - 为什么严格模式会使如此简单的操作如此不同?

html - 存储限制(在 IndexedDB 或 localStorage 上)是否适用于在计算机外运行的本地应用程序?

javascript - 阻止任何导航或按钮在页面上工作

php - 使用下拉菜单动态更改照片

javascript - 根据鼠标单击移动和旋转对象?

javascript - 按 ESC 关闭 Google Chrome 的弹出窗口

popup - 增加Chrome扩展程序中的最大弹出窗口宽度?

javascript - 我的 javascript 有什么问题阻止了警报和/或表单验证?