관련 글
Django Channel 라이브러리와 적용 전/후의 구조 비교 (링크)
Django Channel을 이용한 채팅 시스템 구현 (링크)
Trouble Shooting
Django Channels을 이용하여 채팅 시스템을 구현 하던 중 웹 소켓 API에 UUID를 넣어서 전송하게 되면 아래와 같은 오류가 나오게 된다.
문제점 : "WebSocket connection to 'ws://127.0.0.1:8000/ws/chat/6647dbe4-2e61-4e78-8b8c-8ebc6676626b/ ' failed"
해결 방법 : Django의 routings.py (or urls.py) 에서 uuid를 받을 수 있는 정규식으로 변환 (두번째줄) 해 주면 된다.
from django.urls import re_path
from . import consumers
websocket_urlpatterns = [
# re_path(r'ws/chat/(?P<room_name>\w+)/$', consumers.ChatConsumer.as_asgi()), # 일반 ver
re_path(r'ws/chat/(?P<room_name>[A-Za-z0-9_-]+)', consumers.ChatConsumer.as_asgi()) # uuid ver
]
'Python > Django' 카테고리의 다른 글
[Django] ORM Queryset 특징 (0) | 2022.08.08 |
---|---|
[Django] django-dotenv 설정 (0) | 2022.08.08 |
[Django] Timezone 한국 시간으로 설정하기 (0) | 2022.07.17 |
[Django] 채팅 시스템 (2) 코드 구현하기 (with. FE, BE) (0) | 2022.07.15 |
[Django] 채팅 시스템 (1) Channels 적용 전/후 구조 비교 (0) | 2022.07.15 |