def do_GET(self):
url_map = {instance.url: instance for instance in self.server.test_instances}
if self.path == self.ticket_path:
self.send_response(200)
self.end_headers()
urls = [
{
"url": urljoin(SERVER_URL, test_instance.url),
"headers": test_instance.headers
} for test_instance in self.server.test_instances]
ticket = {"htsget": {"urls": urls}}
self.wfile.write(json.dumps(ticket).encode())
elif self.path in url_map:
instance = url_map[self.path]
if instance.error_code is not None:
self.send_error(instance.error_code)
else:
self.send_response(200)
self.send_header("Content-Length", len(instance.data))
if instance.truncate:
self.end_headers()
self.wfile.write(instance.data[:-1])
self.wfile.flush()
else:
self.end_headers()
self.wfile.write(instance.data)
else:
self.send_error(404)
评论列表
文章目录