2013-09-03 2 views
4

FireBase를 통해 API를 제공하는 장치의 인터페이스에서 작업하고 있지만 FireBase가 제공하는 Java, JavaScript 또는 다른 언어로 작업하지 않습니다.FireBase API의 JavaScript 버전이 제공되지 않습니까?

저는 Lua를 사용하고 있으며 REST API를 쉽게 구현할 수 있지만 firebase.js가 제공하는 것처럼 WebSocket API를 사용할 수 있기를 원합니다.

WebSocket 연결을 만들 수 있지만 권한 부여 기능이 firebase.js에서 어떻게 작동하는지 모르고 firebase.js의 '축소되지 않은'버전이 있는지 궁금해하여 인증 방법을 알 수 있습니다. 전화가 작동합니다.

+1

는 축소 된 버전을 사용할 수는 http://cdn.firebase.com/v0/firebase-에있다 debug.js하지만 웹 소켓을 통한 전신 프로토콜은 언제든지 변경 될 수 있습니다! – Anant

+0

더 가면 주위에 코멘트 등이있는 것이 있습니까? – daurnimator

+0

루아 이외의 언어를 사용하지 않는 클라이언트를 작성 중이므로 많은 옵션이 없습니다. 명령에 REST API를 사용할 수 있으며 REST API를 사용하여 폴링 할 수도 있지만 항상 업데이트 할 수있는 드라이버는 그리 효율적이지 않습니다. – RyanE

답변

0

Firebase가 클라이언트 라이브러리와 통신하는 데 사용하는 프로토콜은 문서화 된 API가 아닙니다. 리버스 엔지니어링 할 수는 있지만 문서화 된 API가 아니기 때문에 언제든지 변경 될 수 있습니다.

Firebase의 REST Streaming을 조사하면 위치 변경 내용을들을 수 있습니다. 여기에 문서에 따라, 서버가 보낼 수 있는지의 예 :

// Set your entire cache to {"a": 1, "b": 2} 
event: put 
data: {"path": "/", "data": {"a": 1, "b": 2}} 
// Put the new data in your cache under the key 'c', so that the complete cache now looks like: 
// {"a": 1, "b": 2, "c": {"foo": true, "bar": false}} 
event: put 
data: {"path": "/c", "data": {"foo": true, "bar": false}} 

또한, @Anant 그의 의견에 가지 설명 중포 기지 클라이언트가 아주 오래된입니다 deprecated version이다.

+1

감사합니다. 이 질문을 게시 한 후, Nest/FireBase는 REST 스트리밍을 발표했습니다. REST 스트리밍은 내가하려는 일에 더 잘 맞습니다. 더 이상 WebSocket을 사용하지 않으며 더 이상 클라이언트 API를 수행하는 방법을 리버스 엔지니어링하지 않아도됩니다. – RyanE

+0

감사합니다. 나는 그 대답을 내 대답에 추가 할 것이다. – mimming

+0

Ruby 기반 서버와 같이 서버에서 Firebase를 사용하려고 시도하는 경우에도 여전히 끔찍합니다. REST API에는 증가 또는 집계 업데이트 등의 트랜잭션이 없다는 것을 명심하십시오. 이는 Firebase를 사용할 수있는 범위를 심각하게 제한합니다. –

0

CDN의 파일 이름에 -debug을 붙이면 2.x 버전의 Firebase lib의 un-minified/un-obfuscated 디버그 버전을 사용할 수 있습니다. 예 : v2.4.2 debug version is here

더 이상 v3 +에서는 불가능합니다. I've asked another question about that specifically

업데이트 : 대답은 더 v3의 디버그 버전이 현재 사용할 수없는 것 같다 (2016년 7월 18일는)

+0

이 링크가 질문에 대답 할 수 있지만 여기에 답의 핵심 부분을 포함하고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. - [리뷰에서] (리뷰/저품절 포스트/13023226) –

+0

@jankigadhiya 나는 여기에 답변의 핵심 부분을 포함 시켰습니다. 링크는 단순히 URL이 어떻게 보이는지에 대한 예제였습니다. 다른 질문에 대답을 추가했습니다. –

관련 문제