샘플 Python 소켓 모듈을 기반으로 한 코드로 UDP를 통해 바이트 목록을 보내려고합니다. 클라이언트/서버 전송은 문자열로 잘 작동합니다. 그러나 bytearray를 사용하는 것이 길로 보였으 나 수신 된 길이는 내용에 달려있는 것 같습니다. 1,2,3,4,5,6을 보내면 괜찮습니다.하지만 6에서 10 또는 11을 변경하면 서버에서 5 바이트 만 수신합니다. 우분투에서 파이썬 2.7.3. 나는 무엇을 이해하지 못합니까?UDP를 통한 바이트 목록 전송
클라이언트 :
data = bytearray([1,2,3,4,5,6])
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(data, (HOST, PORT))
서버 :
class MyUDPHandler(SocketServer.BaseRequestHandler):
def handle(self):
data = self.request[0].strip()
socket = self.request[1]
print len(data)
idata = map(ord, data)
print len(idata)
print idata[0],idata[1],idata[2],idata[3]
하! 잘 했어. 거기에 원래 예제 코드에서 있었지만, 나는주의를 기울이지 않았다. –