mirror of
https://github.com/python/cpython.git
synced 2025-07-15 23:35:23 +00:00
bpo-40280: Add limited Emscripten REPL (GH-32284)
Co-authored-by: Katie Bell <katie@katharos.id.au>
This commit is contained in:
parent
faa12088c1
commit
96e09837fb
8 changed files with 428 additions and 19 deletions
39
Tools/wasm/wasm_webserver.py
Executable file
39
Tools/wasm/wasm_webserver.py
Executable file
|
@ -0,0 +1,39 @@
|
|||
#!/usr/bin/env python
|
||||
import argparse
|
||||
from http import server
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Start a local webserver with a Python terminal."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--port", type=int, default=8000, help="port for the http server to listen on"
|
||||
)
|
||||
parser.add_argument(
|
||||
"--bind", type=str, default="127.0.0.1", help="Bind address (empty for all)"
|
||||
)
|
||||
|
||||
|
||||
class MyHTTPRequestHandler(server.SimpleHTTPRequestHandler):
|
||||
def end_headers(self):
|
||||
self.send_my_headers()
|
||||
super().end_headers()
|
||||
|
||||
def send_my_headers(self):
|
||||
self.send_header("Cross-Origin-Opener-Policy", "same-origin")
|
||||
self.send_header("Cross-Origin-Embedder-Policy", "require-corp")
|
||||
|
||||
|
||||
def main():
|
||||
args = parser.parse_args()
|
||||
if not args.bind:
|
||||
args.bind = None
|
||||
|
||||
server.test(
|
||||
HandlerClass=MyHTTPRequestHandler,
|
||||
protocol="HTTP/1.1",
|
||||
port=args.port,
|
||||
bind=args.bind,
|
||||
)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Add table
Add a link
Reference in a new issue