Untitled
unknown
plain_text
2 years ago
2.9 kB
21
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