From aa9212f3226b10976c31cdf804139d60ae655a16 Mon Sep 17 00:00:00 2001 From: Andrew Date: Sun, 21 Jul 2019 13:14:38 +0400 Subject: =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0?= =?UTF-8?q?=20=D0=B2=D0=B0=D0=BB=D0=B8=D0=B4=D0=B0=D1=86=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B8=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B9=20=D0=B2=20=D1=80=D1=8F=D0=B4=D1=83.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- day9/task5/server.py | 65 ---------------------------------------------------- 1 file changed, 65 deletions(-) delete mode 100644 day9/task5/server.py (limited to 'day9/task5/server.py') diff --git a/day9/task5/server.py b/day9/task5/server.py deleted file mode 100644 index 86b3e4c..0000000 --- a/day9/task5/server.py +++ /dev/null @@ -1,65 +0,0 @@ -from http.server import HTTPServer, BaseHTTPRequestHandler -from urllib.parse import parse_qs - -from day9.task5_vue.router import run -from day9.task5_vue.utils import parse_multipart_form - -import logging - - -class MyHTTPRequestHandler(BaseHTTPRequestHandler): - def _set_response(self, code, content_type): - self.send_response(code) - self.send_header('Content-type', content_type) - self.end_headers() - - def do_GET(self): - try: - content_length = int(self.headers['Content-Length']) - get_data = parse_qs(self.rfile.read(content_length).decode('utf-8')) - except TypeError: - get_data = {} - - for key in get_data: - get_data[key] = get_data[key][0] - - self.finalize_request(run({ - 'url': self.path, - 'method': 'GET', - 'query': get_data - })) - - def do_POST(self): - content_length = int(self.headers['Content-Length']) - content_type = self.headers['Content-type'] - post_data = self.rfile.read(content_length) - - if content_type.split(';')[0] == 'multipart/form-data': - files = parse_multipart_form(post_data) - self.finalize_request(run({ - 'url': self.path, - 'method': 'POST', - 'query': {'files': files} - })) - - elif content_type.split(';')[0] in ['text/plain', 'application/x-www-form-urlencoded']: - post_data = parse_qs(post_data.decode('utf-8')) - for key in post_data: - post_data[key] = post_data[key][0] - - self.finalize_request(run({ - 'url': self.path, - 'method': 'POST', - 'query': post_data - })) - - def finalize_request(self, response): - self._set_response(response.status_code, response.content_type) - self.wfile.write(response.content) - - -def start_server(host, port): - server_address = (host, port) - httpd = HTTPServer(server_address, MyHTTPRequestHandler) - logging.getLogger('tableApp').info(f'Server started on {host}:{port}') - httpd.serve_forever() -- cgit v1.2.3