特定 event.request 的 If 语句
If statement for specific event.request
我的 service worker index.js 中有以下代码来显示所有事件请求 urls:
self.addEventListener('fetch', functin(event) {
console.log(event.request.url);
});
这样所有请求 url 都列在控制台中。我需要的是一个简单的 if 语句来检查请求 url 是否以 .jpg 结尾。到目前为止,我尝试使用 if === '.jpg'
或变体或 image/jpg
但它并不能解决问题。
您可以使用 String.prototype.endsWith:
if (event.request.url.endsWith('.jpg')) {
console.log(event.request.url);
}
如果此代码将成为 运行 浏览器,请注意 Internet Explorer 尚不支持此功能,因此您可能需要使用 polyfill.
例如
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'));
}
我的 service worker index.js 中有以下代码来显示所有事件请求 urls:
self.addEventListener('fetch', functin(event) {
console.log(event.request.url);
});
这样所有请求 url 都列在控制台中。我需要的是一个简单的 if 语句来检查请求 url 是否以 .jpg 结尾。到目前为止,我尝试使用 if === '.jpg'
或变体或 image/jpg
但它并不能解决问题。
您可以使用 String.prototype.endsWith:
if (event.request.url.endsWith('.jpg')) {
console.log(event.request.url);
}
如果此代码将成为 运行 浏览器,请注意 Internet Explorer 尚不支持此功能,因此您可能需要使用 polyfill.
例如
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'));
}