代码
| import socketio |
| from fastapi import FastAPI |
| from fastapi.middleware.cors import CORSMiddleware |
| from fastapi.responses import RedirectResponse |
| |
| |
| app = FastAPI() |
| |
| |
| sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins=[]) |
| app.mount("/ws", socketio.ASGIApp(sio)) |
| |
| |
| app.add_middleware( |
| CORSMiddleware, |
| allow_origins=["*"], |
| allow_credentials=True, |
| allow_methods=["*"], |
| allow_headers=["*"], |
| ) |
| |
| |
| @app.get("/") |
| def index(): |
| return RedirectResponse(url="/docs", status_code=303) |
| |
| |
| @app.get('/student') |
| async def student(): |
| return {'data': 'alice'} |
| |
| |
| @sio.event |
| async def connect(sid, environ): |
| print(f'sid={sid}, environ={environ}') |
| await sio.emit("connect", 'connect success!!!') |
| |
| |
| @sio.on('join') |
| async def ping_message(sid, data): |
| print(data) |
| await sio.emit("join", 'hello!~~ from server', room=sid) |
关键代码

【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
2022-01-29 对象的解构赋值
2022-01-29 数组解构赋值和展开运算符