Если заявление для конкретного event.request

1

У меня есть следующий код в моем сервисном работнике index.js, чтобы показать все URL-адреса запроса события:

self.addEventListener('fetch', functin(event) {
  console.log(event.request.url);
});

При этом все URL запроса указаны в консоли. Мне нужна простая инструкция if, чтобы проверить, заканчивается ли URL-адрес запроса.jpg. пока я его пробовал, if === '.jpg' или варианты или с image/jpg но это не делает трюк.

  • 1
    «Заканчивается с .jpg » подразумевает event.request.url.endsWith(".jpg") , а не event.request.url === ".jpg" .
Теги:
if-statement

2 ответа

3
Лучший ответ

Вы можете использовать String.prototype.endsWith:

if (event.request.url.endsWith('.jpg')) {
    console.log(event.request.url);
}

Если этот код будет работать в браузере, будьте предупреждены о том, что Internet Explorer еще не поддерживает эту функцию, поэтому вам может понадобиться использовать полипол.

  • 1
    Спасибо Джонатан, это именно то, что мне было нужно, и это прекрасно работает!
0

например

if (event.request.url.endsWith('.jpg')) {
    console.log(event.request.url);
    //handling response you may replace it with somthing
     event.respondWith(fetch('/imgs/avatar.jpg'));
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню