Last active
October 20, 2024 18:50
-
-
Save acdha/925e9ffc3d74ad59c3ea to your computer and use it in GitHub Desktop.
Python 3: serve the current directory as HTTP while setting CORS headers for XHR debugging
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python3 | |
# encoding: utf-8 | |
"""Use instead of `python3 -m http.server` when you need CORS""" | |
from http.server import HTTPServer, SimpleHTTPRequestHandler | |
class CORSRequestHandler(SimpleHTTPRequestHandler): | |
def end_headers(self): | |
self.send_header('Access-Control-Allow-Origin', '*') | |
self.send_header('Access-Control-Allow-Methods', 'GET') | |
self.send_header('Cache-Control', 'no-store, no-cache, must-revalidate') | |
return super(CORSRequestHandler, self).end_headers() | |
httpd = HTTPServer(('localhost', 8003), CORSRequestHandler) | |
httpd.serve_forever() |
Great script, thank you!
so nice, thank you ^^b
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hey guys,
I am hosting a directory in my local system where I have some files I want to access using another domain and port in my local system. In this process, I am getting a CORS error. I am hosting the directory with some files using the node command "HTTP-server -p 8000" from the terminal. I am getting a CORS error when accessing these files from something like the "0.0.0.3000" domain. Can anyone help me host these directories with CORS access for 0.0.0.3000? I will be highly grateful for your help.
(I specifically want help hosting the directory with CORS access, not an HTML page. Examples of hosting an HTML page with CORS access are well documented on the web. Also, as a beginner web developer, I may be asking a dumb question, please pardon me.)
Thank You,
Prashant Upadhyay
PhD