我是第一次开发一个firefox插件,我希望用户能够使用抽搐,facebook等登录。我知道我必须按照此处所述进行“隐式授权流程”: Twitch-API/authentication
所以我首先要做的是用url打开一个新窗口
https://api.twitch.tv/kraken/oauth2/authorize
?response_type=token
&client_id=[your client ID]
&redirect_uri=[your registered redirect URI]
&scope=[space separated list of scopes]
用户输入名称和密码后,他会被重定向到
http://[your registered redirect URI]/#access_token=[an access token]
现在问题是,如何获取访问令牌?据我所知,如果已进入另一个域,我无法访问子窗口的URL。我在整个互联网上搜索了如何通过插件验证网站的解决方案,但我一无所获。非常感谢帮助。
答案 0 :(得分:1)
您可以使用page-mod将脚本注入到与模式匹配的页面中:
http://[your registered redirect URI]/**#**access_token
- https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/page-mod
您可以让page-mod
通过发送main.js
index.js
或window.location.hash
令牌。
或者你可以自己处理。这是我喜欢的方式。我创建了一个<xul:browser>
元素,让用户与之交互。这是SDK插件不易使用的低级方法。但是,如果你想看到它的实际效果,可以在我的插件中试用 - 版本1.6 - https://addons.mozilla.org/en-US/firefox/addon/nativeshot/versions/