import asyncio from fastapi import APIRouter, Request from handler_data import HandlerUser router = APIRouter() from models import UserModel @router.post("/user/") async def user(request: Request, item: UserModel): item.preset.ip = item.preset.ip or request.client.host ta = getattr(request.app.state.ta, item.act) # 将不同游戏发送到不同 topic_name request.app.state.ta.consumer.topic_name = item.game rdb = request.app.state.redis await asyncio.gather(*map(lambda o: asyncio.create_task(o(rdb, item)), HandlerUser.handler_link)) properties = item.dict()['properties'] ta(item.preset.distinct_id, item.preset.account_id, properties) results = {"code": 0, 'msg': 'ok'} return results