Firefoxアドオンでカスタムリファラーを使用してタブを開くにはどうすればよいですか?カスタムリファラーを使用してタブを開く
私はそのような何かを推測:
tab.addProperty("referer", "http://mywebsite.com/");
Firefoxアドオンでカスタムリファラーを使用してタブを開くにはどうすればよいですか?カスタムリファラーを使用してタブを開く
私はそのような何かを推測:
tab.addProperty("referer", "http://mywebsite.com/");
あなたはリファラは、タブを開いたときに指定する必要があり、すでに開いているタブにリファラを「追加」することはできません。あなたはそのためのgBrowser.addTab()
methodを使用します。
gBrowser.addTab("http://example.com/", {referrerURI: "http://referrer.com/"});
gBrowser
は、ブラウザウィンドウでグローバル変数です。あなたがブラウザのウィンドウを持っていない場合は、そのためのnsIWindowMediator.getMostRecentWindow()を使用することができます。
var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
var window = windowMediator.getMostRecentWindow("navigator:browser");
window.gBrowser.addTab(...);
あなたが最初のURIを作成する必要があります。
var ref = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService).newURI("http://referrer.com/",null,null);
gBrowser.addTab("http://example.com/", {referrerURI: ref});
をお楽しみください!
librayのタブの例ではありませんか?ありがとうございます。 –
@MarcosEusebi:アドオンSDKを使用していますか?あなたの質問はそれを言っていません。とにかく、アドオンSDKはリファラーを設定する方法を提供していないので、私の2番目の例のようにchrome authorityとwindow mediatorを使用する必要があります。 –
これを使うhttps://builder.addons.mozilla.org/ –