| import os |
| |
| |
| def get_template(template_basename): |
| script_directory = os.path.dirname(os.path.abspath(__file__)) |
| template_directory = os.path.abspath( |
| os.path.join(script_directory, "template")) |
| template_filename = os.path.join(template_directory, template_basename) |
| |
| with open(template_filename, "r") as f: |
| return f.read() |
| |
| |
| def __noop(request, response): |
| return "" |
| |
| |
| def respond(request, |
| response, |
| status_code=200, |
| content_type="text/html", |
| payload_generator=__noop, |
| cache_control="no-cache; must-revalidate", |
| access_control_allow_origin="*", |
| maybe_additional_headers=None): |
| response.add_required_headers = False |
| response.writer.write_status(status_code) |
| |
| if access_control_allow_origin != None: |
| response.writer.write_header("access-control-allow-origin", |
| access_control_allow_origin) |
| response.writer.write_header("content-type", content_type) |
| response.writer.write_header("cache-control", cache_control) |
| |
| additional_headers = maybe_additional_headers or {} |
| for header, value in additional_headers.items(): |
| response.writer.write_header(header, value) |
| |
| response.writer.end_headers() |
| |
| payload = payload_generator() |
| response.writer.write(payload) |