diff options
author | cmumford <cmumford@chromium.org> | 2016-03-14 10:49:05 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-14 17:52:19 +0000 |
commit | e215c9f5f80130a689abcfe03721f3524be0150a (patch) | |
tree | 503383cf9b63dc04cf1bd2510b38d59c11410682 /tools/md_browser | |
parent | b828e8c267d22f6f308f312e46ca7fae78f27d26 (diff) | |
download | chromium_src-e215c9f5f80130a689abcfe03721f3524be0150a.zip chromium_src-e215c9f5f80130a689abcfe03721f3524be0150a.tar.gz chromium_src-e215c9f5f80130a689abcfe03721f3524be0150a.tar.bz2 |
[md_browser]: Sending header w/Content-Type.
Some browsers (Firefox) display response as plain text w/o any
Content-Type.
Review URL: https://codereview.chromium.org/1786013003
Cr-Commit-Position: refs/heads/master@{#381001}
Diffstat (limited to 'tools/md_browser')
-rw-r--r-- | tools/md_browser/md_browser.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/md_browser/md_browser.py b/tools/md_browser/md_browser.py index 5ee2fa2..2b96852 100644 --- a/tools/md_browser/md_browser.py +++ b/tools/md_browser/md_browser.py @@ -92,7 +92,7 @@ class Handler(SimpleHTTPServer.SimpleHTTPRequestHandler): if not full_path.startswith(SRC_DIR): self._DoUnknown() elif path == '/doc.css': - self._WriteTemplate('doc.css') + self._DoCSS('doc.css') elif not os.path.exists(full_path): self._DoNotFound() elif path.lower().endswith('.md'): @@ -122,16 +122,23 @@ class Handler(SimpleHTTPServer.SimpleHTTPRequestHandler): extension_configs=extension_configs, output_format='html4').encode('utf-8') try: + self._WriteHeader('text/html') self._WriteTemplate('header.html') self.wfile.write(md_fragment) self._WriteTemplate('footer.html') except: raise + def _DoCSS(self, template): + self._WriteHeader('text/css') + self._WriteTemplate(template) + def _DoNotFound(self): + self._WriteHeader('text/html') self.wfile.write('<html><body>%s not found</body></html>' % self.path) def _DoUnknown(self): + self._WriteHeader('text/html') self.wfile.write('<html><body>I do not know how to serve %s.</body>' '</html>' % self.path) @@ -141,6 +148,11 @@ class Handler(SimpleHTTPServer.SimpleHTTPRequestHandler): with codecs.open(path, encoding='utf-8') as fp: return fp.read() + def _WriteHeader(self, content_type='text/plain'): + self.send_response(200) + self.send_header('Content-Type', content_type) + self.end_headers() + def _WriteTemplate(self, template): contents = self._Read(os.path.join('tools', 'md_browser', template)) self.wfile.write(contents.encode('utf-8')) |