feat: 增加桌面端登录、视频清单和封面缓存
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
from fastapi import APIRouter, HTTPException
|
||||
|
||||
from server.errors import call
|
||||
from server.schemas import SessionBody, device_payload
|
||||
from server.services.login import login
|
||||
from server.services.profile_poller import profile_poller
|
||||
from server.services.sessions import sessions
|
||||
|
||||
router = APIRouter(prefix="/api")
|
||||
|
||||
|
||||
@router.post("/me")
|
||||
def me(body: SessionBody):
|
||||
return call(lambda: login.current(body.token, device_payload(body.device)))
|
||||
|
||||
|
||||
@router.get("/profile")
|
||||
def profile():
|
||||
data = sessions.snapshot()
|
||||
if data is None:
|
||||
raise HTTPException(status_code=404, detail="未登录")
|
||||
return data
|
||||
|
||||
|
||||
@router.post("/logout")
|
||||
def logout(body: SessionBody):
|
||||
token = body.token.strip()
|
||||
profile_poller.stop_if(token)
|
||||
sessions.clear(token)
|
||||
return {"ok": True}
|
||||
Reference in New Issue
Block a user