2016-10-19 1 views
1

나는 bleno (노드 js BLE 패키지)를 사용하고 있으며 버퍼를 사용하여 데이터를 보내고받습니다. Buffer 객체를 가져 와서 JSON으로 변환하는 방법은 무엇입니까? 이것은 내가 지금 가지고있는 것입니다 :버퍼에서 JSON으로 자바 스크립트

bufferToJson = buffer.toString(); 
bufferToJson = JSON.stringify(bufferToJson) 
bufferToJson = JSON.parse(bufferToJson) 

버퍼는 데이터가있는 곳입니다. 버퍼가 될 수있는 예제는 {cmd:'echo'}입니다. bufferToJson.cmd을 시도했지만 정의되지 않았습니다. 감사.

+0

뭐라고이다 'buffer.toString()'의 값 - 예상 한 것입니까? –

+2

JSON은 바이너리 데이터를 인코딩 할 수 없습니다. 버퍼 (아마도 UTF8로)를 구문 분석하거나 base64를 사용해야합니다. – SLaks

+0

{cmd : 'echo'}은 (는) 유효한 json이 아닙니다. cmd와 echo는 큰 따옴표가 필요합니다. 당신은 eval을 사용할 수 있습니다. – adrianj98

답변

1

당신의 버퍼 오브젝트과 같이 될 것이다 다음 JSON, 변환하는 가장 쉬운 방법의 올바른 표현이 포함 된 경우 :

let json = JSON.parse(buffer); 
0

에 따라 작동합니다 :

var bufferToJson = JSON.parse(myBuffer.toString());