2014-05-21 2 views
1

파일 판독기를 통해 파일을 분할하여 readAsArrayBuffer을 통해 읽는 슬라이스로 분할하는 파일 청킹 작업이 있습니다. 나는 메타 데이터가 첨부 된 데이터 채널 (예 : 청크 아이디)을 통해 한 번에 하나씩 그 청크를 보내고 싶습니다. 마찬가지로 : WebRTC 데이터 채널을 통해 메타 데이터가있는 파일 청크 보내기

// Build chunk wrapper 
var block = { 
    chunkId: id, 
    data: buffer 
}; 

// Send the chunk to peer 
channel.send(JSON.stringify(block)); 

는 지금은 ArrayBuffer buffer의 데이터 위에 입증 될 때 데이터가 손실되는 것을 보낼 때. 내 데이터 채널을 통해 데이터를 보내는 데 문제가 없다고 강조하고 싶습니다.

파일 덩어리가 올바른 순서로 재 조립 될 수 있도록 관련 메타 정보로 데이터를 보낼 수있는 방법을 알고 싶습니다.

두 개의 하위 배열, 하나는 메타 정보, 다른 하나는 실제 데이터가있는 ArrayBuffer를 작성하거나 간단한 방법이 필요합니까?

+0

현재 비슷한 문제가있어 궁금한 점이 있습니까? –

답변

0

이 문제를 해결할 수있는 방법은 여러 가지가 있지만 기본적으로 직렬화, 인코딩 및 비 직렬화, 데이터 디코딩이 필요합니다.
데이터로 메타 데이터를 보내려면 둘 다 uint8 배열 또는 문자열로 직렬화하고 수신 측에서 반전 조작을 수행해야합니다.
예를 들어 Sharefest는 TLV 프로토콜을 사용합니다. https://github.com/Peer5/ShareFest/blob/master/core/protocol/BinaryProtocol.js

관련 문제