diff --git a/examples/server.py b/examples/server.py index 537e2946..c2b189cf 100644 --- a/examples/server.py +++ b/examples/server.py @@ -10,11 +10,23 @@ DIRECTORY = os.path.abspath(DIRECTORY) class CustomHTTPRequestHandler(http.server.SimpleHTTPRequestHandler): def __init__(self, *args, **kwargs): super().__init__(*args, directory=DIRECTORY, **kwargs) - + + def do_GET(self): + # If requesting a worker file from any subdirectory + if '.worker.js' in self.path: + worker_file = os.path.basename(self.path) + worker_path = os.path.join(DIRECTORY, worker_file) + + if os.path.exists(worker_path): + self.path = '/' + worker_file + + return super().do_GET() + def end_headers(self): # Add required headers for SharedArrayBuffer self.send_header("Cross-Origin-Opener-Policy", "same-origin") self.send_header("Cross-Origin-Embedder-Policy", "require-corp") + self.send_header("Access-Control-Allow-Origin", "*"); super().end_headers() PORT = 8000