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)
评论列表
文章目录