def _handle_request(self, handler_def, **kwargs):
"""A generic HTTP method handler."""
if not handler_def:
raise MethodNotAllowedError()
handler = handler_def.handler
kwargs.update(self._get_query_args(handler_def))
self._cast_args(handler, kwargs)
self._parse_and_update_body(handler_def)
if inspect.iscoroutinefunction(handler):
resp = await handler(self.request, **kwargs)
else:
self.log.warning("'%s' is not a coroutine!", handler_def.handler)
resp = handler(self.request, **kwargs)
if resp:
self._write_response(resp, handler_def)
评论列表
文章目录