73 lines
1.5 KiB
JavaScript
73 lines
1.5 KiB
JavaScript
var mySharedWorker = new SharedWorker("file_spawn_shared_worker.js");
|
|
mySharedWorker.port.onmessage = function (ev) {
|
|
parent.postMessage(
|
|
{
|
|
result: "shared-worker-allowed",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
mySharedWorker.port.close();
|
|
};
|
|
mySharedWorker.onerror = function (evt) {
|
|
evt.preventDefault();
|
|
parent.postMessage(
|
|
{
|
|
result: "shared-worker-blocked",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
mySharedWorker.port.close();
|
|
};
|
|
mySharedWorker.port.start();
|
|
mySharedWorker.port.postMessage("foo");
|
|
|
|
// --------------------------------------------
|
|
|
|
let myWorker = new Worker("file_spawn_worker.js");
|
|
myWorker.onmessage = function (event) {
|
|
parent.postMessage(
|
|
{
|
|
result: "worker-allowed",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
};
|
|
myWorker.onerror = function (event) {
|
|
parent.postMessage(
|
|
{
|
|
result: "worker-blocked",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
};
|
|
|
|
// --------------------------------------------
|
|
|
|
navigator.serviceWorker
|
|
.register("file_spawn_service_worker.js")
|
|
.then(function (reg) {
|
|
// registration worked
|
|
reg.unregister().then(function () {
|
|
parent.postMessage(
|
|
{
|
|
result: "service-worker-allowed",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
});
|
|
})
|
|
.catch(function (error) {
|
|
// registration failed
|
|
parent.postMessage(
|
|
{
|
|
result: "service-worker-blocked",
|
|
href: document.location.href,
|
|
},
|
|
"*"
|
|
);
|
|
});
|