32 lines
890 B
JavaScript
32 lines
890 B
JavaScript
self.addEventListener("fetch", function (event) {
|
|
dump("fetch " + event.request.url + "\n");
|
|
if (event.request.url.includes("iframe2.html")) {
|
|
var body =
|
|
"<script>" +
|
|
"window.parent.postMessage({" +
|
|
"source: 'iframe', status: 'swresponse'" +
|
|
"}, '*');" +
|
|
"var w = new Worker('worker.js');" +
|
|
"w.onmessage = function(evt) {" +
|
|
"window.parent.postMessage({" +
|
|
"source: 'worker'," +
|
|
"status: evt.data," +
|
|
"}, '*');" +
|
|
"};" +
|
|
"</script>";
|
|
event.respondWith(
|
|
new Response(body, {
|
|
headers: { "Content-Type": "text/html" },
|
|
})
|
|
);
|
|
return;
|
|
}
|
|
if (event.request.url.includes("worker.js")) {
|
|
var body = "self.postMessage('worker-swresponse');";
|
|
event.respondWith(
|
|
new Response(body, {
|
|
headers: { "Content-Type": "application/javascript" },
|
|
})
|
|
);
|
|
}
|
|
});
|