2016-11-04 3 views
2

サービスワーカーをWebページのキャッシュ部分に書き込もうとしていますが、処理の方法を決定するために、各リクエストの起点とパスが必要です。残念なことに、Requestオブジェクトは文字列として完全なURLしか持っていないので、それを解析する方法が見つかりません。サービスワーカーのURLを解析する方法

URL解析は複雑でエラーが発生する可能性があるため、可能であればネイティブ機能を使用することをお勧めしますが、JavascriptでURLを解析する唯一の方法は、明らかにオプションではないDOM <a>要素を悪用することですサービスワーカーのコンテキストで使用します。私は何をすべきか?

+0

私はすでにそれを投票しました。 – Antimony

答えて

2

これにはURL APIを使用できます。
それはあなたの文字列から新しいURLオブジェクトを作成し、コンポーネントを使用する能力を提供します:

var a = new URL('http://www.domain.com/asdf/?a=b#123'); 
 
console.log(a) 
 

 
a.searchParams.forEach(function(val, key){ 
 
    console.log(key + ' ' + val); 
 
});

それは実験的なAPIですが、Web労働者ではその利用可能なので、それがあるべき良い。