serviceworker_not_sharedworker.js (493B)
1 function OnMessage(e) { 2 if (e.data.msg == "whoareyou") { 3 // ("ServiceWorker" is now exposed in workers.) 4 if ("ServiceWorkerGlobalScope" in self) { 5 self.clients.matchAll().then(function (clients) { 6 clients[0].postMessage({ result: "serviceworker" }); 7 }); 8 } else { 9 port.postMessage({ result: "sharedworker" }); 10 } 11 } 12 } 13 14 var port; 15 onconnect = function (e) { 16 port = e.ports[0]; 17 port.onmessage = OnMessage; 18 port.start(); 19 }; 20 21 onmessage = OnMessage;