0

IP 電話と通信する chrome 拡張機能を開発しました。

通信は、XMLHttpRequestオブジェクトを介して POST リクエストを送信するイベント ページで行われます。

電話のホスト名または IP アドレスはオプション ページで設定されoptional_permissionsているため、マニフェスト ファイルに追加し、chrome.permissions.request.

Cross-Origin XHR は、Chrome を再起動するまで問題なく動作するようになりました...

Chrome を再起動すると、要求された権限が失われたように見え、典型的な is not allowed by Access-Control-Allow-Originエラーが発生します。

拡張機能のアクセス許可をクリックすると、要求したアクセス許可が表示されなくなっていることもわかります。

はユーザー ジェスチャに対してのみ機能するためchrome.permissions.request、拡張機能のロード中またはその場でリクエストすることはできません。オプションページで許可を再度要求しても、許可するかどうかを再度尋ねられることはなく、許可が付与され、すべてが通常どおりに機能します。

この許可を要求した後に永続的に付与する方法はありますか? 拡張機能が必要なエンドポイントにアクセスできるようにしたいだけです。

どうもありがとうございました。

4

1 に答える 1

3

私にとっては、次の報告された問題が私の質問に答えました: Issue 158004: chrome.permissions.request support for user-supplied URL

明確にするために: で定義されている権限のサブセットを要求することはできませんoptional_permissions。定義する場合はhttp://*/*、正確にこの文字列をリクエストする必要があります! のようなサブセットは機能http://example.org/*しません!

問題の説明のコメントからの引用を次に示します。 「ワイルドカードの処理はなく、URLPatterns 間の単純な文字列の比較のみです」

この問題はリビジョン 182287で修正されています。

残っている唯一のことは、この修正が次のクロムリリースにすぐに含まれることを指を交差させることです. Access your data on all websitesその間、血まみれの許可を使用する必要があります。

于 2013-08-05T10:10:49.550 に答える