2024-05-09 16:22:18 -05:00
|
|
|
#!/bin/python3
|
2024-05-09 15:29:45 -05:00
|
|
|
|
|
|
|
|
import http.server, ssl, socketserver
|
|
|
|
|
import urllib.parse
|
|
|
|
|
|
|
|
|
|
context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
|
|
|
|
|
context.load_cert_chain("cert.pem") # PUT YOUR cert.pem HERE
|
2024-05-09 16:22:18 -05:00
|
|
|
server_address = ("0.0.0.0", 2222) # CHANGE THIS IP & PORT
|
2024-05-09 15:29:45 -05:00
|
|
|
#handler = http.server.SimpleHTTPRequestHandler
|
|
|
|
|
|
|
|
|
|
#class MyHandler(http.server.SimpleHTTPRequestHandler):
|
|
|
|
|
class MyHandler(http.server.BaseHTTPRequestHandler):
|
|
|
|
|
def do_GET(self):
|
|
|
|
|
parsed_url = urllib.parse.urlparse(self.path)
|
|
|
|
|
code = urllib.parse.parse_qs(parsed_url.query).get('code', [None])[0]
|
|
|
|
|
if code:
|
|
|
|
|
print(code)
|
|
|
|
|
self.send_response(200)
|
|
|
|
|
self.send_header("Content-type", "text/html")
|
|
|
|
|
self.end_headers()
|
|
|
|
|
self.wfile.write("OK.".encode("utf-8"))
|
|
|
|
|
self.wfile.flush()
|
|
|
|
|
self.wfile.close()
|
|
|
|
|
quit()
|
|
|
|
|
else:
|
|
|
|
|
print("Invalid or missing authorization code")
|
|
|
|
|
|
|
|
|
|
with socketserver.TCPServer(server_address, MyHandler) as httpd:
|
|
|
|
|
httpd.socket = context.wrap_socket(httpd.socket, server_side=True)
|
|
|
|
|
httpd.serve_forever()
|