import http.server import json import disk class RequestHandler(http.server.BaseHTTPRequestHandler): protocol_version = 'HTTP/1.1' timeout = 10 def do_DELETE(self): try: disk.delete_disk(self.body()) except Exception as error: self.log_error("Disk deletion failed: %s", error) self.send_error(500) return self.send_success() def do_POST(self): try: disk.create_disk(self.body()) except Exception as error: self.log_error("Disk creation failed: %s", error) self.send_error(500) return self.send_success() def body(self): content_length = int(self.headers.get('Content-Length', 0)) return json.loads(self.rfile.read(content_length)) def send_success(self): self.close_connection = True self.send_response(200) self.send_header('Content-Length', '0') self.send_header('Connection', 'close') self.end_headers()