我正在尝试创建一个铬的扩展。需要和github合作。
我目前使用oauth.js作为auth,使用铬扩展样板http://extensionizr.com/。
当我在localhost尝试我的代码时,我可以没有问题。
这是oauth的一个我的代码:
OAuth.initialize('my key');
OAuth.popup('github', {
cache: true
}, function(error, success) {
console.log(error)
that.auth_token = success.access_token;
});这是弹出的时候我试着:

这是控制台错误:

这是Oauth.io域:

这是rquest的反应
<!DOCTYPE html>
<html>
<head>
<script>
(function() {
"use strict";
var msg="{\"status\":\"error\",\"message\":\"Origin \\\"chrome-extension://bfhbkhhimmcbjgofifofjgbjaojgbihj/\\\" does not match any registered domain/url on oauth.io\",\"state\":\"181DBPf5s84Q6s3rjMJHuiqSlPY\",\"provider\":\"github\"}";
chrome.runtime.sendMessage("bfhbkhhimmcbjgofifofjgbjaojgbihj", {data:msg});
window.close();
})();
</script>
</head>
<body></body>
</html>帮帮我!
发布于 2014-04-26 17:07:53
chrome扩展不是一个域,而是一个方案。这就是为什么它不能工作。
见这里的答案:https://github.com/oauth-io/oauthd/issues/52
你需要用
"externally_connectable": {
"matches": ["https://oauth.io/*"]
},在清单中,chrome.sendMessage将被允许执行。
https://stackoverflow.com/questions/23313900
复制相似问题