既然 Google Chrome 扩展程序可以注册 Service Workers,我该如何使用它们来修改来自所有主机的 HTTP 响应,例如通过替换所有出现的catwith dog?
下面是Craig Russell的示例代码,但如何在 Chrome 扩展程序中使用它并将其绑定到所有主机?
self.addEventListener('fetch', function(event) {
event.respondWith(
fetch(event.request).then(function(response) {
var init = {
status: response.status,
statusText: response.statusText,
headers: {'X-Foo': 'My Custom Header'}
};
response.headers.forEach(function(v,k) {
init.headers[k] = v;
});
return response.text().then(function(body) {
return new Response(body.replace(/cat/g, 'dog'), init);
});
})
);
});
Run Code Online (Sandbox Code Playgroud) javascript google-chrome google-chrome-extension service-worker