2016-11-04 1 views
2

Я пытаюсь написать Service Worker для кэширования части моей веб-страницы, но мне нужно указать источник и путь каждого запроса, чтобы решить, как с ним обращаться. К сожалению, объект Request имеет только полный URL-адрес в виде строки, и я не могу найти способ его проанализировать.Как анализировать URL-адреса у рабочего-службы

Анализ URL-адресов - сложный процесс с ошибкой, поэтому я предпочел бы использовать встроенную функциональность, если это возможно, но единственный метод, который я могу найти для анализа URL-адресов в Javascript, включает в себя злоупотребление элементом 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 Workers, поэтому она должна быть хорошо.

 Смежные вопросы

  • Нет связанных вопросов^_^