我访问过很多网站,他们为我创建了很多 Service Worker。当我访问 chrome://serviceworker-internals/时,我发现我需要取消注册许多脚本 url 包含特定单词的服务工作线程。
我怎样才能做到这一点?
最佳答案
使用此功能:
function unregisterServiceWorkersWhereScriptContainSpecificWord(specificWord) {
const allServiceWorkerDivs = [
...document.body.querySelectorAll('.serviceworker-item'),
];
const serviceWorkerDivsWhichContainSpecificWord = allServiceWorkerDivs.filter(
(div) => {
const scriptDiv = div.querySelector('.serviceworker-script_url');
return scriptDiv.textContent.includes(specificWord);
}
);
const unregisterButtons = serviceWorkerDivsWhichContainSpecificWord.map(
(div) => {
return div.querySelector('button.unregister');
}
);
unregisterButtons.forEach((button) => {
button.click();
});
}
它获取必须位于 Service Worker div 元素文本内容中的特定单词,然后单击每个 Service Worker 的取消注册按钮
请注意,应在浏览器控制台中定义和调用此函数
关于service-worker - 以编程方式取消注册脚本包含特定单词的服务 worker ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76532262/