handler.py 文件源码

python
阅读 34 收藏 0 点赞 0 评论 0

项目:aiohttp-transmute 作者: toumorokoshi 项目源码 文件源码
def create_handler(transmute_func, context):

    @wraps(transmute_func.raw_func)
    async def handler(request):
        exc, result = None, None
        try:
            args, kwargs = await extract_params(request, context,
                                                transmute_func)
            result = await transmute_func.raw_func(*args, **kwargs)
        except HTTPException as hpe:
            code = hpe.status_code or 400
            exc = APIException(code=code, message=str(hpe))
        except Exception as e:
            exc = e
        response = transmute_func.process_result(
            context, result, exc, request.content_type
        )
        return web.Response(
            body=response["body"], status=response["code"],
            content_type=response["content-type"],
            headers=response["headers"]
        )

    handler.transmute_func = transmute_func
    return handler
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号