1

Google Chrome 拡張機能をマニフェスト v1 からマニフェスト v2 に更新するプロセスを進めています。主に Google 自身のChrome 拡張機能 Web サイトにある古いドキュメントが原因で、物事が順調に進んでいるとは言えません。

ここに最新のものがあります:

拡張機能内から OAuth を使用するための Google のドキュメントでは、マニフェストに次の 3 つのファイルを含めるように指示されています。

chrome_ex_oauth.html  
chrome_ex_oauth.js  
chrome_ex_oauthsimple.js

これらのファイルの最初の chrome_ex_oauth.html は、基本的に、拡張機能が最初に OAuth を使用して最初のリクエスト トークンを取得するときに開かれるリダイレクト ページです。この非常に予備の Web ページの更新版では、head セクションにロードする3 つのJavaScript ファイルが リストされています。

onload.js

拡張機能で chrome_ex_oauth.html を開くと、存在しない「onload.js」ファイルの読み込みに失敗した以外に、エラーの兆候はありません。明らかに、ここで何かが欠けています。OAuth シーケンスが正常に完了することはなく、実際に開始されたことを示す兆候はありません。

私が間違っていることを誰かが知っていますか?

4

1 に答える 1

4

この質問を投稿した後、古いバージョンと新しいバージョンの chrome_ex_oauth.html を比較しました。前者では、onload.js スクリプトについての言及はありませんでしたが、head に次のような記述がありました。

<script type="text/javascript">
    function onLoad() {
        ChromeExOAuth.initCallbackPage();
    };
</script>

この関数はインラインと呼ばれていました:

<body onload="onload();">
...

マニフェスト v2 の時点で、インライン JavaScript は固く禁止されているため、これは飛べませんでした。代わりに onload.js をロードする呼び出しがドキュメント ヘッドに追加されました。Google のドキュメントにある実際のファイルへのリンクが見落とされているようです。書くのは簡単ですが、onload.js に入れるものは次のとおりです。

window.onload = function() { ChromeExOAuth.initCallbackPage(); };

その後、リダイレクトは問題なく機能し、OAuth プロセスを完了することができました。

うまくいかない場合はお知らせください。

于 2013-01-11T01:51:39.170 に答える