我目前正在尝试制作一个 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 扩展程序的用户进行身份验证。步骤是:
- 向您的 list 添加权限并上传您的应用。
- 将已安装的 list .json 中的 key 复制到源 list ,以便 3. 您的应用 ID 在开发过程中保持不变。
- 获取您的 Chrome 应用的 OAuth2 客户端 ID。
- 更新您的 list 以包含客户端 ID 和范围。
- 获取身份验证 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/