Files
mussea-signer/web.py
Pablo Ferreiro b9300a8791 Patch for heroku
2022-03-11 19:28:12 +01:00

39 lines
1.1 KiB
Python

import json
from http.server import BaseHTTPRequestHandler, HTTPServer
from TikTokSigner.Signer import Signer
from os import getenv
signer = Signer()
class TikServer(BaseHTTPRequestHandler):
def do_POST(self):
if self.path == '/signature':
content_length = int(self.headers['Content-Length'])
post_data = self.rfile.read(content_length)
url = post_data.decode()
data = signer.sign(url)
nav = signer.navigator()
res = {
'status': 'ok',
'data': {
**data,
'navigator': nav
}
}
self.send_response(200)
self.send_header('Content-type', 'application/json')
self.end_headers()
self.wfile.write(json.dumps(res).encode())
if __name__ == '__main__':
PORT = getenv('PORT', 8080)
try:
print('Starting server')
httpd = HTTPServer(('0.0.0.0', PORT), TikServer)
httpd.serve_forever()
except KeyboardInterrupt:
httpd.shutdown()