middlewares.py 文件源码

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

项目:aiohttp_test_chat 作者: steelkiwi 项目源码 文件源码
def authorize(app, handler):
    async def middleware(request):
        def check_path(path):
            result = True
            for r in ['/login', '/static/', '/signin', '/signout', '/_debugtoolbar/']:
                if path.startswith(r):
                    result = False
            return result

        session = await get_session(request)
        if session.get("user"):
            return await handler(request)
        elif check_path(request.path):
            url = request.app.router['login'].url()
            raise web.HTTPFound(url)
            return handler(request)
        else:
            return await handler(request)

    return middleware
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号