if n_str isNone: self.send_error(400, "Missing n parameter") return
try: n = int(n_str) except ValueError: self.send_error(400, "Invalid n") return
f = fib(n) fib_str = str(f) md5_hash = hashlib.md5(fib_str.encode()).hexdigest()
body = md5_hash.encode() self.send_response(200) self.send_header("Content-Type", "text/plain") self.send_header("Content-Length", str(len(body))) self.end_headers() self.wfile.write(body)
deflog_message(self, format, *args): sys.stderr.write(f"[Fib] {args[0]}{args[1]}{args[2]}\\n")
if __name__ == "__main__": port = 8765 server = HTTPServer(("0.0.0.0", port), FibHandler) print(f"Fibonacci MD5 service listening on port {port}", flush=True) server.serve_forever()
把本地端口通过 cloudflared 暴露出去,并把公网入口提交给
WeChall:
1
$ cloudflared tunnel --url http://127.0.0.1:8765
+++
SYSTEM STATUS: ACTIVEENCRYPTED SECTOR 7PRTS_TERMINAL_V2.0PROTOCOL: 0x2AENCRYPTED DATA STREAMSYSTEM: ONLINE