def call(self, request):
if self.client is None:
self.client = AsyncHTTPClient()
answer = gen.Future()
http_request = _to_http_request(self.url, request)
@fail_to(answer)
def on_fetch(future):
if future.exception():
_handle_request_exception(future.exception())
result = future.result()
answer.set_result(
Response(
headers=headers.from_http_headers(result.headers),
body=result.body,
),
)
self.client.fetch(http_request).add_done_callback(on_fetch)
return answer
评论列表
文章目录