webhook.py 967 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env python3
  2. from http.server import BaseHTTPRequestHandler, HTTPServer
  3. import time
  4. class MyServer(BaseHTTPRequestHandler):
  5. def do_POST(self):
  6. print("event", self.headers.get('X-Yunion-Event'))
  7. contlenstr = self.headers.get('Content-Length')
  8. contlen = 0
  9. if len(contlenstr) > 0:
  10. contlen = int(contlenstr)
  11. print(self.rfile.read(contlen))
  12. self.send_response(200)
  13. self.send_header("Content-type", "application/json")
  14. self.end_headers()
  15. self.wfile.write(bytes('{"result":"ok"}', encoding='utf-8'))
  16. def serve(hostName, serverPort):
  17. webServer = HTTPServer((hostName, serverPort), MyServer)
  18. print("Server started http://%s:%s" % (hostName, serverPort))
  19. try:
  20. webServer.serve_forever()
  21. except KeyboardInterrupt:
  22. pass
  23. webServer.server_close()
  24. print("Server stopped.")
  25. if __name__ == "__main__":
  26. serve('0.0.0.0', 20888)