2013-04-24 2 views
2

노드를 사용하여 소켓을 통해 이진 값을 보내고 데이터 길이에 4 바이트 길이의 값을 보내서 수신기가 예상하는 데이터의 양을 알 수 있도록합니다. .버퍼의 시작 부분에 길이 값을 추가하십시오.

버퍼를 사용하여 어떻게 수행 할 수 있습니까? Protobuf를 사용하여 노드를 처음으로 버퍼를 구성한 다음 크기를 버퍼의 시작 부분에 추가해야합니다.

답변

0

현재 버퍼의 시작 부분에 추가하려면 가장 쉬운 방법은 새 버퍼를 만드는 것입니다.

var buf = // Protobuf buffer 

// Create a 4-byte buffer with the length. 
var prefix = new Buffer(4); 
prefix.writeUint32LE(buf.length, 0); 

// Join them together as a new Buffer. 
var data = Buffer.concat([prefix, buf]); 
관련 문제