相关疑难解决方法(0)

如何在 Google Chrome 扩展中使用 Service Workers 来修改 HTTP 响应正文?

既然 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

7
推荐指数
1
解决办法
8063
查看次数