1
私のFF拡張モジュールでは、ページ内のすべてのリンクの絶対URLを取得したいと考えています。私はこれがJSによってできることを知っています。しかし、私はこれがどんなFFサービスでもできるかどうかを知りたい。Firefoxの拡張機能の相対URLから絶対URLを取得しますか?
ありがとうございました。
私のFF拡張モジュールでは、ページ内のすべてのリンクの絶対URLを取得したいと考えています。私はこれがJSによってできることを知っています。しかし、私はこれがどんなFFサービスでもできるかどうかを知りたい。Firefoxの拡張機能の相対URLから絶対URLを取得しますか?
ありがとうございました。
まずは、リンクの絶対URLを取得することは簡単です:あなたは絶対URLを取得するように
console.log(doc.links[0].href);
リンク(ないhref
属性)のhref
プロパティは常に自動的に解決されますまったく努力していない。
本当に欲しいのは、あなたがどこかから得た相対URLを解決することだと思います。あなたはこのためにnsIIOServiceを使用します。その結果、相対URL /test.gif
は、ページアドレスhttp://example.com/index.html
に対する解決されたhttp://example.com/test.gif
var ioService = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
var baseURI = ioService.newURI("http://example.com/index.html", null, null);
var absURI = ioService.newURI("/test.gif", null, baseURI);
console.log(absURI.spec);
この例ではあなたに与えます。
完璧、ありがとう! – NoBugs