Untitled
unknown
plain_text
a year ago
2.9 kB
6
Indexable
from http.server import HTTPServer, SimpleHTTPRequestHandler from http.client import HTTPSConnection import io import sys import base64 import json class CORSRequestHandler(SimpleHTTPRequestHandler): def log_message(self, format, *args): if "log" in self.path: return SimpleHTTPRequestHandler.log_message(self, format, *args) def do_POST(self): content_length = int(self.headers['Content-Length']) body = self.rfile.read(content_length) if "log" in self.path: CRED = '\033[92m' CEND = '\033[0m' msg = "".join([str(v) for k,v in json.loads(body).items()]) print(f"{CRED}{msg}{CEND}") self.send_response(200) SimpleHTTPRequestHandler.end_headers(self) return connection = HTTPSConnection('music.amazon.com') headers = { "x-amz-requestid": self.headers["x-amz-requestid"], "x-amz-target": self.headers["x-amz-target"], "x-amz-access-token": self.headers["x-amz-access-token"], "content-encoding": self.headers["content-encoding"], "content-type": self.headers["content-type"], #"accept-language": self.headers["accept-language"], #"accept": self.headers["accept"], } connection.request("POST", self.path, body, headers) response = connection.getresponse() self.send_response(response.status) SimpleHTTPRequestHandler.end_headers(self) self.wfile.write(response.read()) def do_GET(self): print(f"path {self.path}") self.send_response(200) self.send_header('Access-Control-Allow-Credentials', 'true') self.send_header('Access-Control-Allow-Origin', self.headers['origin']) self.send_header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS') connection = HTTPSConnection('z.tryandrew.shop') connection.request("GET", self.path) response = connection.getresponse() for key in response.headers: self.send_header(key, response.headers[key]) SimpleHTTPRequestHandler.end_headers(self) self.send_response(response.status) self.wfile.write(response.read()) def do_OPTIONS(self): print(f"OPTIONS") self.send_response(200) self.send_header('Access-Control-Allow-Credentials', 'true') self.send_header('Access-Control-Allow-Origin', self.headers['origin']) self.send_header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS') self.send_header('Access-Control-Allow-Headers', 'Allow, Content-Encoding, x-amz-target, Content-type') SimpleHTTPRequestHandler.end_headers(self) httpd = HTTPServer(('192.168.68.109', int(sys.argv[1])), CORSRequestHandler) httpd.serve_forever()
Editor is loading...
Leave a Comment