Skip to content

Instantly share code, notes, and snippets.

@UniIsland
Created February 10, 2018 14:30
Show Gist options
  • Save UniIsland/1028b8e98b9963945bbfe37521f9350a to your computer and use it in GitHub Desktop.
Save UniIsland/1028b8e98b9963945bbfe37521f9350a to your computer and use it in GitHub Desktop.
Simple Python HTTP server with CORS (or other custom) header.
#!/usr/bin/env python
# Attribution: https://stackoverflow.com/questions/21956683/enable-access-control-on-simple-http-server
try:
# Python 3
from http.server import HTTPServer, SimpleHTTPRequestHandler, test as test_orig
import sys
def test (*args):
test_orig(*args, port=int(sys.argv[1]) if len(sys.argv) > 1 else 8000)
except ImportError: # Python 2
from BaseHTTPServer import HTTPServer, test
from SimpleHTTPServer import SimpleHTTPRequestHandler
class CORSRequestHandler (SimpleHTTPRequestHandler):
def end_headers (self):
self.send_header('Access-Control-Allow-Origin', '*')
SimpleHTTPRequestHandler.end_headers(self)
if __name__ == '__main__':
test(CORSRequestHandler, HTTPServer)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment