サービスワーカーからパラメータを使用してページURLを取得するにはどうすればよいですか?サービスワーカーからページURLパラメータを取得する
私はself.registration.scope
を試しましたが、パラメータは含まれていません。
サービスワーカーからパラメータを使用してページURLを取得するにはどうすればよいですか?サービスワーカーからページURLパラメータを取得する
私はself.registration.scope
を試しましたが、パラメータは含まれていません。
の.search
プロパティを取得することができますサービスワーカーのスコープで開いているすべてのクライアントページのURL。だから... ...ここの両方を行う方法は次のとおりです。これらのケースのいずれにおいても
// Get a URL object for the service worker script's location.
const swScriptUrl = new URL(self.location);
// Get URL objects for each client's location.
self.clients.matchAll({includeUncontrolled: true}).then(clients => {
for (const client of clients) {
const clientUrl = new URL(client.url);
}
});
、あなたがURL
オブジェクトを持っていたら、あなたはクエリパラメータに興味があるなら、あなたはそのsearchParams
propertyを使用することができます。
if (url.searchParams.get('key') === 'value') {
// Do something if the URL contains key=value as a query parameter.
}
を
あなたは私はあなたがサービスワーカースクリプトのURLを取得する方法について求めているかどうかについての明確ではないよ、または、waiting.scriptURL
またはactive.scriptURL
を取得URL()
コンストラクタにつながる渡し、オブジェクト
navigator.serviceWorker.register("sw.js?abc=123")
.then(function(reg) {
const scriptURL = reg.waiting && reg.waiting.scriptURL || reg.active.scriptURL;
const url = new URL(scriptURL);
const queryString = url.search;
console.log(queryString);
}).catch(function(err) {
console.log("err", err);
});