socketServer를 이용하여 챗팅 server, client 구현 편에 질문이 있습니다.
3029
작성한 질문수 2
안녕하세요. 강의 잘 듣고 있습니다.
socketServer를 이용하여 챗팅 server, client 구현 하기 편에서 client멀티 접속시 에러가 납니다.
```
python .\chat_server.py
('127.0.0.1', 50094)
현재 1 명 참여중
('127.0.0.1', 50100)
현재 2 명 참여중
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 50100)
Traceback (most recent call last):
File "C:\Python36\lib\socketserver.py", line 654, in process_request_thread
self.finish_request(request, client_address)
File "C:\Python36\lib\socketserver.py", line 364, in finish_request
self.RequestHandlerClass(request, client_address,
self)
File "C:\Python36\lib\socketserver.py", line 724, in __init__
self.handle()
File ".\chat_server.py", line 25, in handle
self.send_all_message("[{}] 님이 입장 했습니다.".format(nickname))
File ".\chat_server.py", line 9, in send_all_message
sock.send(msg.encode())
OSError: [WinError 10038] 소켓 이외 의 개체에 작업을 시도했습니다
```
원인이 무엇일까요?
답변 1
1
전체 코드를 보지 않아 명확히 답을 드리기는 어렵습니다만 오류의 맨 마지막 내용을 보았을때 sock.send(msg.encode()) 에서 소켓 이외의 개체에 작업을 시도한것으로 보아 sock 변수의 소켓 값이 제대로 저장되지 않는 변수에 send 를 시도한걸로 보입니다.
접속 발생시 유저의 nickname 과 매칭하는 request 값과 address 의 튜플형태의 데이터를 제대로 저장했는지 그리고 해당 nickname 을 통해 sock(request) 가 옳바른지부터 확인해봐야 할듯 합니다.
38강 = 연산자 더하고 빼기
0
60
2
주석처리
0
116
1
함수의 파라미터값 msg
0
155
1
강의자료 이미지 안나옴
0
239
3
강의자료 질문 두번째
0
165
3
강의자료 관련 질문
0
116
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
235
1
소수 너무 어려워요
0
245
1
imagefont 함수 사용
0
239
1
pylint
0
357
1
add 함수 문의 ㅠㅠ
0
283
1
형식 문의드립니다.
0
209
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
602
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
253
1
zsh: command not found: pylint
0
269
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
546
1
질문드립니다.
1
374
2
list.reverse() 출력에 대해서 질문있습니다.
1
433
1
데코레이터 함수 및 동작시간 질문입니다.~
1
323
2
opencv 사용하면서 궁금한점 (해상도)
1
781
1
질문드립니다.
1
299
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
445
1
크롤링안되는 현상 문의 드립니다.
1
421
1
파이썬 크롤링 관련 문의
1
277
1





