docs(api): more exactly

This commit is contained in:
MingxuanGame
2025-08-12 16:17:50 +00:00
parent f274ba15b9
commit 39e7309d01
8 changed files with 64 additions and 53 deletions

View File

@@ -5,7 +5,7 @@ from typing import Literal
from app.database import Beatmap, Beatmapset, BeatmapsetResp, FavouriteBeatmapset, User
from app.dependencies.database import get_db
from app.dependencies.fetcher import get_fetcher
from app.dependencies.user import get_current_user
from app.dependencies.user import get_client_user, get_current_user
from app.fetcher import Fetcher
from .router import router
@@ -68,7 +68,7 @@ async def get_beatmapset(
async def download_beatmapset(
beatmapset_id: int = Path(..., description="谱面集 ID"),
no_video: bool = Query(True, alias="noVideo", description="是否下载无视频版本"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
):
if current_user.country_code == "CN":
return RedirectResponse(
@@ -92,7 +92,7 @@ async def favourite_beatmapset(
action: Literal["favourite", "unfavourite"] = Form(
description="操作类型favourite 收藏 / unfavourite 取消收藏"
),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
assert current_user.id is not None

View File

@@ -2,7 +2,7 @@ from __future__ import annotations
from app.database import Relationship, RelationshipResp, RelationshipType, User
from app.dependencies.database import get_db
from app.dependencies.user import get_current_user
from app.dependencies.user import get_client_user, get_current_user
from .router import router
@@ -69,7 +69,7 @@ class AddFriendResp(BaseModel):
async def add_relationship(
request: Request,
target: int = Query(description="目标用户 ID"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
assert current_user.id is not None
@@ -143,7 +143,7 @@ async def add_relationship(
async def delete_relationship(
request: Request,
target: int = Path(..., description="目标用户 ID"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
relationship_type = (

View File

@@ -13,7 +13,7 @@ from app.database.room import APIUploadedRoom, Room, RoomResp
from app.database.room_participated_user import RoomParticipatedUser
from app.database.score import Score
from app.dependencies.database import get_db, get_redis
from app.dependencies.user import get_current_user
from app.dependencies.user import get_client_user, get_current_user
from app.models.room import RoomCategory, RoomStatus
from app.service.room import create_playlist_room_from_api
from app.signalr.hub import MultiplayerHubs
@@ -149,7 +149,7 @@ async def _participate_room(
async def create_room(
room: APIUploadedRoom,
db: AsyncSession = Depends(get_db),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
):
assert current_user.id is not None
user_id = current_user.id
@@ -177,7 +177,7 @@ async def get_room(
),
),
db: AsyncSession = Depends(get_db),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
redis: Redis = Depends(get_redis),
):
db_room = (await db.exec(select(Room).where(Room.id == room_id))).first()
@@ -198,7 +198,7 @@ async def get_room(
async def delete_room(
room_id: int = Path(..., description="房间 ID"),
db: AsyncSession = Depends(get_db),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
):
db_room = (await db.exec(select(Room).where(Room.id == room_id))).first()
if db_room is None:
@@ -219,7 +219,7 @@ async def add_user_to_room(
room_id: int = Path(..., description="房间 ID"),
user_id: int = Path(..., description="用户 ID"),
db: AsyncSession = Depends(get_db),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
):
db_room = (await db.exec(select(Room).where(Room.id == room_id))).first()
if db_room is not None:
@@ -242,7 +242,7 @@ async def remove_user_from_room(
room_id: int = Path(..., description="房间 ID"),
user_id: int = Path(..., description="用户 ID"),
db: AsyncSession = Depends(get_db),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
):
db_room = (await db.exec(select(Room).where(Room.id == room_id))).first()
if db_room is not None:

View File

@@ -33,7 +33,7 @@ from app.database.score import (
from app.dependencies.database import get_db, get_redis
from app.dependencies.fetcher import get_fetcher
from app.dependencies.storage import get_storage_service
from app.dependencies.user import get_current_user
from app.dependencies.user import get_client_user, get_current_user
from app.fetcher import Fetcher
from app.models.room import RoomCategory
from app.models.score import (
@@ -263,7 +263,7 @@ async def create_solo_score(
version_hash: str = Form("", description="游戏版本哈希"),
beatmap_hash: str = Form(description="谱面文件哈希"),
ruleset_id: int = Form(..., ge=0, le=3, description="ruleset 数字 ID (0-3)"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
assert current_user.id is not None
@@ -290,7 +290,7 @@ async def submit_solo_score(
beatmap_id: int = Path(description="谱面 ID"),
token: int = Path(description="成绩令牌 ID"),
info: SoloScoreSubmissionInfo = Body(description="成绩提交信息"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
redis: Redis = Depends(get_redis),
fetcher=Depends(get_fetcher),
@@ -313,7 +313,7 @@ async def create_playlist_score(
beatmap_hash: str = Form(description="游戏版本哈希"),
ruleset_id: int = Form(..., ge=0, le=3, description="ruleset 数字 ID (0-3)"),
version_hash: str = Form("", description="谱面版本哈希"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
session: AsyncSession = Depends(get_db),
):
assert current_user.id is not None
@@ -386,7 +386,7 @@ async def submit_playlist_score(
playlist_id: int,
token: int,
info: SoloScoreSubmissionInfo,
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
session: AsyncSession = Depends(get_db),
redis: Redis = Depends(get_redis),
fetcher: Fetcher = Depends(get_fetcher),
@@ -509,7 +509,7 @@ async def show_playlist_score(
room_id: int,
playlist_id: int,
score_id: int,
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
session: AsyncSession = Depends(get_db),
redis: Redis = Depends(get_redis),
):
@@ -580,7 +580,7 @@ async def get_user_playlist_score(
room_id: int,
playlist_id: int,
user_id: int,
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
session: AsyncSession = Depends(get_db),
):
score_record = None
@@ -616,7 +616,7 @@ async def get_user_playlist_score(
)
async def pin_score(
score_id: int = Path(description="成绩 ID"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
score_record = (
@@ -658,7 +658,7 @@ async def pin_score(
)
async def unpin_score(
score_id: int = Path(description="成绩 ID"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
score_record = (
@@ -699,7 +699,7 @@ async def reorder_score_pin(
score_id: int = Path(description="成绩 ID"),
after_score_id: int | None = Body(default=None, description="放在该成绩之后"),
before_score_id: int | None = Body(default=None, description="放在该成绩之前"),
current_user: User = Security(get_current_user, scopes=["*"]),
current_user: User = Security(get_client_user),
db: AsyncSession = Depends(get_db),
):
score_record = (