2016-07-14 1 views
0

Firebase 데이터베이스를 모니터링하는 데 사용하는 매우 간단한 NodeJS 서버가 있습니다. 내 코드는 중포 기지 문서에 샘플 기본적으로 동일하다 : 나는 우리의 네트워크 내에서이 코드를 실행하면Firebase 서버 NodeJS가 서비스 계정에 연결하지 못했습니다.

var firebase = require("firebase"); 
firebase.initializeApp({ 
    databaseURL: 'https://myurl.firebaseio.com/', 
    serviceAccount: 'path/to/json.json' 
}) 

지금 내가 데 문제가있다, 그것은 A A가로 연결 것으로 보인다 넣은 사람은 아니다 직후의 코드 블록이 일부 데이터를 읽을하고 달렸다을 얻을 수 없습니다 :

var nodeRef = this.db.ref("node"); 
nodeRef.on("child_added", function (snapshot, prevChildKey) { 
    // ... 
}, function (error) { 
    console.log(error); 
}) 

나는 모든 사람들이 데이터베이스에 대한 쓰기 권한을주는 경우에, 나는 initializeApp 통화 설정 serviceAccount을 취할 수 있고, 모든 것이 완벽하게 작동합니다. 나는 Fiddler를 실행하여 그 요청이 실패한 것을보기 위해 노력했지만, Fiddler에서 어떤 요청도 전혀 나타나지 않는다. 우리 프록시가 허용해야 할 전화가 무엇인지 생각해보십시오.

+0

클라이언트가 서비스 계정으로 인증 할 수없는 것 같습니다. 문제가 보안과 관련된 경우 쓰기가 실패 할 때 오류가 표시됩니다. 로그와 관련된 것이 있습니까? 일반적으로 디버깅 로깅 ('firebase.database.enableLogging (true)')을 활성화하고 이것이 인증되지 않는 이유에 대한 힌트를 보여줄 수 있는지 확인하는 것이 유용 할 수 있습니다. –

+0

로깅을 사용하도록 설정 한 후 "오류 : 인증서 체인에 자체 서명 된 인증서"가 표시됩니다. 다른 URL을 사용하면이 URL이 다른 것일 수 있습니다. 따라서 프록시에서 허용 목록을 허용 할 수 있습니까? –

답변

0

IT 팀에서 문제점을 발견 한 후 프록시 서버에 accounts.google.com을 열어달라고 요청했습니다. "터널"대신 "허용"으로 설정되었습니다.

그에 따르면 HSTS 헤더는 터널로 설정되어 있지 않으면 프록시에서 SSL 암호 해독을 일으켜서 위에서 언급 한 "자체 서명 된 인증서"오류를 일으켰습니다.

0

나를 위해, 카스 퍼 스키를 작동 시키면 작동하지 않습니다. 너는 그것을 시도 할 수있다.

관련 문제