JavaScript에서 Google 프로토콜 버퍼를 사용하는 것이 좋은 선택입니까, 아니면 JSON으로 수행하는 것이 더 낫습니까?
또한 누군가 나에게 JavaScript에서 프로토콜 버퍼 구현에 대한 간단한 예제를 줄 수 있다면 좋을 것입니다. Google 사이트의 문서는 거의 없습니다.
답변:
Google의 오픈 소스 프로토콜 버퍼 구현은 github에서 사용할 수 있습니다.
공식 protobuf 프로젝트는 Java, C ++ 및 Python 만 지원합니다. 자바 스크립트가 아닙니다.
프로젝트의 Wiki에 따르면 프로토콜 버퍼를 Javascript로 포팅하는 세 가지 프로젝트가 있습니다.
Protobuf.js는 최신 버전입니다. protobuf-js는 2 년 동안 업데이트되지 않았으므로 Protobuf.js를 선호합니다.
질문은 여전히 "왜"입니까? : protobuf는 특히 많은 숫자 값이 전송되는 경우 약간 더 작을 수 있지만 JSON은 JS 공간에서 더 일반적인 프로토콜이며 아마도 더 잘 지원되고 다른 도구에 통합하기 더 쉽습니다.
업데이트 (2016 년 7 월 28 일) : 릴리스 3.0.0이 게시 되어 몇 가지 다른 기능 외에도 Javascript 및 기타 언어도 지원합니다.
Google은 최근 protobufs에 JS에 대한 알파 지원을 추가했습니다. https://github.com/google/protobuf/releases/tag/v3.0.0-beta-2
용법:
protoc -I=$SRC_DIR --js_out=$DST_DIR $SRC_DIR/addressbook.proto
릴리스 문서의 스크린 샷 :
Protobuf 3.0.0이 출시되었습니다. https://github.com/google/protobuf/releases/tag/v3.0.0
그리고 그것은 기본적으로 JavaScript를 지원합니다. 기본 정보는 공지 사항에 있습니다.
곧 조사하겠습니다.
Protostuff를 사용해보십시오 !
구성하는 데 약간의 어려움이 있었지만 그것이 내 문제에 더 가깝다고 확신합니다. JSON으로 /에서 protobuff / protostuff 메시지를 직렬화 / 역 직렬화 할 수 있습니다. 나는 이것을 사용하는 초기 단계에 있지만 지금까지는 유망 해 보입니다.