2014-07-11 2 views
3

현재 내 socket.io 0.9base64 문자열을 보내면 내 채팅 앱에서 이미지를 보낼 수 있습니다.socket.io 바이너리 버퍼 장점?

설명서에 Binary 데이터 (예 : Buffers)가 지원되는 socket.io 1.0,으로 업그레이드되었습니다. 나는 Buffers가 무엇인지에 대해 거의 알지 못한다. 그러나 그것을 작동시키는 것처럼 보일 수있다.

나를위한 이점은 으로 내 모든 base64 문자열을 이동하여 원시 문자열 대신 전송하는 것입니다. 바이너리 지원은 대용량 메시지에 대해 현명한 작업을 수행합니까?

+0

하지만 파일이 큰 경우에 나는 약간의 문제가 발생, 사용자가 취득 제한 시간 : http://stackoverflow.com/questions/34734943/chat-message-is-blocked-when -sending-file-then-timeout-by-heartbeat 귀찮게합니까? – Arch1tect

답변

0

socket.io는 주로 사용자가 요청하여 바이너리 데이터를 보내는 기능을 도입했습니다.

이미지를 버퍼로 직접 보내면 대역폭이 줄어 듭니다. Base64는 원본 데이터 크기보다 약 37 % 더 큽니다.

출처 : base64 encoded image size

나도 64 기수를 사용
+0

고마워요! 더 안정적입니까? 내가 나쁜 (모바일) 연결을 가지고 큰 base64를 보낼 때 때때로 연결이 끊어집니다. –

+0

신뢰성은 모바일 장치와 재 연결하는 경우 문제가됩니다. 클라이언트가 이미지를 가지고 있는지 확인하려면 확인 시스템이 필요합니다. –