Files
xteink-web-emulator/scripts/serve-web.py
T

28 lines
979 B
Python

#!/usr/bin/env python3
import argparse
from http.server import SimpleHTTPRequestHandler, ThreadingHTTPServer
class IsolatedHandler(SimpleHTTPRequestHandler):
def end_headers(self):
self.send_header("Cross-Origin-Opener-Policy", "same-origin")
self.send_header("Cross-Origin-Embedder-Policy", "require-corp")
self.send_header("Cross-Origin-Resource-Policy", "same-origin")
super().end_headers()
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--port", type=int, default=8000)
parser.add_argument("--host", default="0.0.0.0")
args = parser.parse_args()
server = ThreadingHTTPServer((args.host, args.port), IsolatedHandler)
print(f"Serving on http://{args.host}:{args.port}/web/")
print("Note: WASM pthreads need a secure context — use localhost or HTTPS; a"
" bare LAN IP over HTTP is not cross-origin isolated.")
server.serve_forever()
if __name__ == "__main__":
main()