-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathwasm-server.py
26 lines (20 loc) · 883 Bytes
/
wasm-server.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Python 3
import sys
import socketserver
from http.server import SimpleHTTPRequestHandler
class WasmHandler(SimpleHTTPRequestHandler):
def end_headers(self):
# Include additional response headers to allow for use of the
# SharedArrayBuffer.
self.send_header("Cross-Origin-Opener-Policy", "same-origin")
self.send_header("Cross-Origin-Embedder-Policy", "require-corp")
SimpleHTTPRequestHandler.end_headers(self)
# Python 3.7.5 adds in the WebAssembly Media Type. If this is an older
# version, add in the Media Type.
if sys.version_info < (3, 7, 5):
WasmHandler.extensions_map['.wasm'] = 'application/wasm'
if __name__ == '__main__':
PORT = 8080
with socketserver.TCPServer(("", PORT), WasmHandler) as httpd:
print("Listening on port {}. Press Ctrl+C to stop.".format(PORT))
httpd.serve_forever()