transfer-datachannel-worker.js (581B)
1 let channel; 2 onmessage = (event) => { 3 if (event.data.channel) { 4 channel = event.data.channel; 5 channel.onopen = () => self.postMessage("opened"); 6 channel.onerror = () => self.postMessage("errored"); 7 channel.onclose = () => self.postMessage("closed"); 8 channel.onmessage = event => self.postMessage(event.data); 9 } 10 if (event.data.message) { 11 if (channel) 12 channel.send(event.data.message); 13 } 14 if (event.data.close) { 15 if (channel) 16 channel.close(); 17 } 18 }; 19 self.postMessage("registered");