mirror of
https://github.com/servo/servo.git
synced 2025-08-06 22:15:33 +01:00
Make service workers talk to their serviceworkerglobalscopes
This commit is contained in:
parent
72279cc7eb
commit
0996b38ade
13 changed files with 184 additions and 46 deletions
|
@ -4,4 +4,8 @@ self.addEventListener('activate', function(e) {
|
|||
|
||||
self.addEventListener('fetch', function(e) {
|
||||
console.log("A fetch event detected by /iframe service worker");
|
||||
});
|
||||
});
|
||||
|
||||
self.addEventListener('message', function(e) {
|
||||
console.log('Post message payload ' + e.data.msg);
|
||||
})
|
||||
|
|
|
@ -23,6 +23,13 @@
|
|||
console.log("From client worker registered: ", navigator.serviceWorker.controller);
|
||||
console.log("Registered script source: "+ navigator.serviceWorker.controller.scriptURL);
|
||||
document.getElementById('iframe_sw').src = 'demo_iframe.html';
|
||||
var payload = { msg: 'Hi from /iframe service worker' };
|
||||
|
||||
// The delay is due to the sender being set in the service worker object after the scope starts.
|
||||
// This won't be needed when service workers are wrapped with Promises.
|
||||
setTimeout(function() {
|
||||
navigator.serviceWorker.controller.postMessage(payload);
|
||||
}, 1000);
|
||||
|
||||
function register_zero() {
|
||||
var reg = navigator.serviceWorker.register('sw.js', { 'scope': './' });
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue