<script> const ipcRenderer = require('electron').ipcRenderer; let search = (new URL(document.location)).search; async function testIt() { if (search === '?clearBadge') { try { await navigator.setAppBadge(42); ipcRenderer.send('setAppBadge','SUCCESS setting app badge'); } catch (error) { ipcRenderer.send('error', `${error.message}\n${error.stack}`); } } navigator.serviceWorker.register('service-worker-badge.js', {scope: './'}).then(function() { if (navigator.serviceWorker.controller) { var xhr = new XMLHttpRequest(); xhr.open('GET', 'http://dummy/echo'+search); xhr.setRequestHeader('X-Mock-Response', 'yes'); xhr.addEventListener('load', function() { ipcRenderer.send('response', xhr.responseText); }); xhr.send(); } else { ipcRenderer.send('reload'); } }).catch(function(error) { ipcRenderer.send('error', `${error.message}\n${error.stack}`); }) } testIt(); </script>