Nicolas Lepage 5ec4a8d7e8
[FEATURE] Use ReadableStream for Response (#15)
* feat: uses ReadableStream for Response

* chore: rebuilds other examples
2024-10-14 09:14:50 +02:00

33 lines
971 B
HTML

<!DOCTYPE html>
<html>
<head>
<title>go-wasm-http-server hello demo</title>
<script>
navigator.serviceWorker.register('sw.js')
.then(registration => {
const serviceWorker = registration.installing ?? registration.waiting ?? registration.active
if (serviceWorker.state === 'activated') {
startEventSource()
} else {
serviceWorker.addEventListener('statechange', e => {
if (e.target.state === 'activated') startEventSource()
})
}
})
function startEventSource() {
const es = new EventSource('/api/events')
es.addEventListener('ping', (e) => {
const p = document.createElement('p')
p.textContent = `ping: data=${e.data}`
document.body.append(p)
})
window.addEventListener('unload', () => {
es.close()
})
}
</script>
</head>
<body></body>
</html>