誰でも誰にでもなれる大きなチャットは、本物のアプリではありません。 FastAPI 完全チュートリアル (初心者→導入) のレッスン 47 では、新しい小さなプロジェクトで、チャット ルーム (コースごとに 1 部屋) と WebSocket 経由の認証を段階的に構築します。 RoomManager の行ごと: ルームの辞書、setdefault による参加、退出 (空の部屋は消える)、メンバー、および 1 つのルームのみに到達するブロードキャスト。次に認証の問題: ブラウザの WebSocket は Authorization ヘッダーを送信できないため、トークンがクエリ文字列 (?token=…) に含まれ、それを Cookie および最初のメッセージ トークンと比較します。 WebSocket の依存関係は、受け入れ前に JWT を検証し、WebSocketException(1008) を発生させます。実際のクライアントには HTTP 403 が表示され、TestClient にはコード 1008 とその理由が表示されます。登録ユーザー専用のルーム (認証と承認)、トークンの有効期限が切れると自動的に閉じる接続 (タイムアウト付きの asyncio.wait_for)、最終的なクリーンアップ、および通常の HTTP リクエストで 1 つのルームにアナウンスする教師。実際の uvicorn サーバーに対する 2 つのデモと、メッセージが部屋に届かなかったことを証明する方法を含む 11 のテスト。 💻 このビデオのコード: https://github.com/nileshborate/fastapi/tree/main/47-websockets-rooms 📂 コース全体のコード: https://github.com/nileshborate/fastapi ▶️ 完全なプレイリスト: https://www.youtube.com/playlist?list=PLBjgbZvHwQmg 🌐 ウェブサイト: https://www.nileshtechnology.in ⏱️ 章 0:00 イントロ 0:05 宿題の答え (ビデオ 46): プライベート メッセージ + 2 人のアシャなし 1:54 1 つの教室から実際の部屋へ 2:39 今日の計画 3:13 コードの入手先 (GitHub) 3:49 プロジェクト: メモリ内のユーザー 5:03 RoomManager: 1 つの部屋へのブロードキャスト 6:32 WebSocket 経由の認証: 承認なしヘッダー 7:45 ws_session の依存関係 (accept 前) 9:38 ルームのエンドポイント: 登録済みユーザーのみ 10:50 トークンの有効期限が切れたら接続を閉じる 12:26 最後に: すべてのケースでルームから退出する 13:03 HTTP 経由のメンバー + 教師のアナウンス 13:59 認証デモ: 403、101、およびトークンの有効期限が切れる 15:10 ルームのデモ: メッセージはルームに残る16:26 テスト: WebSocket を介した認証 17:51 テスト: ルーム (メッセージが到着しなかったことを証明) 18:53 本番前 19:37 3 つのよくある間違い 20:17 面接での質問 21:25 要約、宿題、次の内容 📝 宿題 1. 履歴: 新しいメンバーは、参加直後にルームの最後の 20 メッセージを取得します (ルームごとに deque(maxlen=20)) 2. /rooms/{room}/members/{username} (教師のみ) を削除すると、コード 1008 と「教師によって削除された」という理由でルーム内のすべてのユーザーの接続が閉じられます。 3. 両方のテスト 答えは次のビデオにあります。 🎯 このビデオの質問を聞く • FastAPI で WebSocket を認証するにはどうすればよいですか? • チャット ルームはどのように構築しますか? • WebSocket を開いている間に JWT の有効期限が切れるとどうなりますか? ⏭️ 次のビデオ: Async Deep Dive – def と async def、イベント ループ、スレッドプール、呼び出しのブロック、run_in_threadpool 👍 いいね、Nilesh Technology に登録して次のレッスンのベルを押してください! #FastAPI #Python #WebSockets #JWT #RealTime #FastAPIチュートリアル #バックエンド開発 #Pythonチュートリアル #NileshTechnology
免責事項:info@kdj.com
提供される情報は取引に関するアドバイスではありません。 kdj.com は、この記事で提供される情報に基づいて行われた投資に対して一切の責任を負いません。暗号通貨は変動性が高いため、十分な調査を行った上で慎重に投資することを強くお勧めします。
このウェブサイトで使用されているコンテンツが著作権を侵害していると思われる場合は、直ちに当社 (info@kdj.com) までご連絡ください。速やかに削除させていただきます。
2026年11月16日 他の動画も公開されています