자료형별로 짝을 이루는 세 메서드
FastAPI 의 WebSocket 객체에는 서로 짝을 이루는 보내기와 받기 메서드가 세 쌍 있어. 문자열은 send_text/receive_text, 자동 직렬화되는 JSON 딕셔너리는 send_json/receive_json, 가공하지 않은 바이너리는 send_bytes/receive_bytes 를 써. receive_json() 이 JSON 을 해석하고 send_json() 이 직렬화해 주기 때문에 애플리케이션의 95% 는 이 JSON 쌍만으로 충분해.
iter_text 와 iter_json
직접 while True 반복문을 만드는 대신 async for msg in websocket.iter_json(): 같은 비동기 반복자를 쓸 수 있어. 동작은 같지만 더 간결하고, 연결이 끊기면 반복자가 멈추므로 이 형태에서는 WebSocketDisconnect 를 따로 처리할 필요가 없어.
send_json 은 메시지 형식을 정해 주지 않아
send_json(obj) 은 json.dumps(obj) 가 만들 내용을 보낼 뿐이야. type 과 data 를 담는 봉투 구조까지 강제하지는 않아. 그 설계는 애플리케이션의 몫이고 트랙 5 에서 자세히 다룰 거야.