instant-workstation/backend/disks/request_handler.py
Henrik Brüsecke 7f5b5209a1 Disks Service
2026-10-22 19:38:18 +03:00

41 lines
1 KiB
Python

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()