#!/usr/bin/env python3 import http.server import urllib.request import re class ProxyHandler(http.server.CGIHTTPRequestHandler): def end_headers(self): self.send_my_headers() http.server.CGIHTTPRequestHandler.end_headers(self) def send_my_headers(self): self.send_header("Access-Control-Allow-Origin", "*") def do_GET(self): if self.path[0:14] == "/cgi-bin/proxy": url = self.path[15:] res = urllib.request.urlopen(url) self.send_response(res.status) self.send_header("Content-Type", res.getheader('Content-Type')) self.send_header("Content-Length", res.getheader('Content-Length')) self.end_headers() self.wfile.write(res.read()) else: super().do_GET() if __name__ == '__main__': http.server.test(HandlerClass=ProxyHandler)