- From: Matthew Bauer <notifications@github.com>
- Date: Fri, 14 Aug 2015 10:06:48 -0700
- To: slightlyoff/ServiceWorker <ServiceWorker@noreply.github.com>
Received on Friday, 14 August 2015 17:07:20 UTC
A common use case of IndexedDB is to save state during the "beforeunload" event. Because IndexedDB is asynchronous, this operation is [unsupported behavior according to the specs](http://lists.w3.org/Archives/Public/public-webapps/2012JanMar/0809.html) although it's hit or miss on [browser implementations](http://vaughnroyko.com/idbonbeforeunload/). I think this kind of "save on exit" operation could be possible with Service Workers but I want to confirm that there is consensus that this should be supported behavior. Take for example a web game: ```js // page context navigator.serviceWorker.register('serviceWorker.js'); var saveData = new Uint8Array(); // memory store with binary data window.onunload = function() { // postMessage should be synchronous in this context? navigator.serviceWorker.controller.postMessage({ type: 'save', save: saveData, slot: 1 }); }; ``` ```js // serviceWorker.js self.onmessage = function(event) { if (event.data.type === 'save') { // async saving of event.data.save } }; ``` --- Reply to this email directly or view it on GitHub: https://github.com/slightlyoff/ServiceWorker/issues/731
Received on Friday, 14 August 2015 17:07:20 UTC