From 2d9a475833b12b444401966af3ace70741567c43 Mon Sep 17 00:00:00 2001 From: Andrew Hamilton Date: Sun, 21 Nov 2021 22:53:12 +1000 Subject: [PATCH] webserver: Send pages gzip compressed. - Also don't need POST or HEAD. --- eris/eris/webserver.py | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/eris/eris/webserver.py b/eris/eris/webserver.py index 3267112..a0e65dd 100755 --- a/eris/eris/webserver.py +++ b/eris/eris/webserver.py @@ -25,7 +25,7 @@ Example: def make_page(body_html, title): - return f""" + text = f""" {title} @@ -37,6 +37,7 @@ def make_page(body_html, title): {body_html} """ + return gzip.compress(text.encode("utf-8")) def make_main_body(): @@ -70,6 +71,7 @@ class Webserver(http.server.BaseHTTPRequestHandler): def _set_headers(self): self.send_response(200) self.send_header("Content-type", "text/html") + self.send_header("Content-encoding", "gzip") self.end_headers() def do_GET(self): @@ -82,14 +84,7 @@ class Webserver(http.server.BaseHTTPRequestHandler): page = make_listing_page(self.path[1:]) else: return - self.wfile.write(page.encode("utf-8")) - - def do_HEAD(self): - self._set_headers() - - def do_POST(self): - self._set_headers() - self.wfile.write("posted".encode("utf-8")) + self.wfile.write(page) def make_main_page(project_name):