app.py 文件源码

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

项目:toshi-admin-service 作者: toshiapp 项目源码 文件源码
def post_login(request):
    token = request.json['auth_token']
    url = '{}/v1/login/verify/{}'.format(ID_SERVICE_LOGIN_URL, token)
    resp = await app.http.get(url)
    if resp.status != 200:
        raise SanicException("Login Failed", status_code=401)

    user = await resp.json()
    toshi_id = user['toshi_id']
    session_id = generate_session_id()
    async with app.pool.acquire() as con:
        admin = await con.fetchrow("SELECT * FROM admins WHERE toshi_id = $1", toshi_id)
        if admin:
            await con.execute("INSERT INTO sessions (session_id, toshi_id) VALUES ($1, $2)",
                              session_id, toshi_id)
    if admin:
        response = json_response(user)
        response.cookies['session'] = session_id
        #response.cookies['session']['secure'] = True
        return response
    else:
        toshi_log.info("Invalid login from: {}".format(toshi_id))
        raise SanicException("Login Failed", status_code=401)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号