2016-06-15 3 views
0

使用する前に、私たちのエクステンションユーザーはログインする必要があります。我々はいくつかのパラメータを必要とする外部プロバイダを使用します。リダイレクトURLはその中にあります。ユーザーがログインすると、彼はxpiファイル内になければならないページにリダイレクトされます。だから、このページのURLは何かを正確に知る必要があります。このURLはホワイトリストに追加する必要があります。このURLはすべてのユーザーが同じであることを確認する必要があります。Firefox WebExtensionのリソースへのパスを特定して、異なるユーザーのchrome.extension.getUrl()で同じ値を取得する方法はありますか。

beastify拡張機能(https://github.com/mdn/webextensions-examples/tree/master/beastify)を別のコンピュータにインストールしました。同じボタンをクリックすると、イメージへの別のパスが得られます。 moz-extension://1cb85296-3a66-42f5-85df-5caf7d388c56/beasts/frog.jpg最初とmoz-extension:// 2e986e2d-1307-49ee -a4d4-f83e642ecf66/beasts/frog.jpg(秒)

Firefox WebExtensionの異なるユーザーのchrome.extension.getUrl()で同じ値を取得するにはどうすればよいですか?

UPD: manifest.jsonに「キー」を設定した後でChromeで使用することは可能です(ただし、Firefoxではこの方法では機能しません)。その後chrome.extension.getUrl()は、chrome.runtime.id、chrome.extension.idは、異なるユーザのための1つの値を返します/インストール/デバイス は私が

UPD2 Firefoxで同じ動作を必要とする:https://bugzilla.mozilla.org/show_bug.cgi?id=1271663

+0

を使用することができると思いますか?それはあなたに道を与えませんか? – Noitidart

+0

@Noitidartはい、そうです。しかし、(!)私は私の内線の別のインストールのための1つのパスが必要です。 – Karrsom

答えて

0

私はあなたがchrome.extension.getUrl( 'frog.jpg')は `あなたを与える`やってん何

browser.extension.getURL("/"); 
+0

この方法は、Firefoxでのさまざまなインストールに異なるパスを提供しますが、問題を解決しないでください。 – Karrsom

+0

moz-extension://1cb85296-3a66-42f5-85df-5caf7d388c56/beasts/frog.jpg // 1cb85296-3a66-42f5-85df-5caf7d388c56は、firefox/chromeによって作成されたIDです。これは、デバイスによって異なります。 – sweeta

+0

ああ、いいえ。 manifest.jsonにkeyを設定すると、Chromeのさまざまなデバイスの1つのパスになります。 このパスは「chrome://」+ chrome.runtime.id として使用できます。また、chrome.runtime.id(Chromeの場合)はデバイスに依存しません。 Firefoxで同じ動作が必要です。 – Karrsom

関連する問題