Firestore의 대화형 셸을 갑자기 시작합니다.

Firestore에서 약간의 쿼리를 실험할 때 Node.js의 REPL(Read-Eval-Print-Loop)을 사용하여 대화형 쉘을 이용하고 있는 사람은 많다고 생각합니다. 그때 매번 node 커맨드를 실행한 뒤에 .load スクリプト名 등으로 접속을 하고 있는 사람은 괜찮지요?

db
#!/bin/bash                                                                                                                                                                     
node --require await-outside/repl -i -e "                                                                                                                                                                    
  const firebase = require('firebase-admin');
  var serviceAccount = require('./.service-account.json');
  firebase.initializeApp({
      credential: firebase.credential.cert(serviceAccount)
  });
  var db = firebase.firestore();
"

이 스크립트를 개발 환경의 Firebase 프로젝트의 맨 위에도 설치해 두면 ./db 의 커멘드로 Firestore에의 대화형 쉘이 출현합니다. 다음과 같은 느낌으로 실행할 수 있습니다. 유용합니까?
$ ./db
> await db.collection('tests').doc('hoge').set({name: 'oreore'});
WriteResult {
  _writeTime: Timestamp { _seconds: 1576307204, _nanoseconds: 63907000 } }
> (await db.collection('tests').doc('hoge').get()).data()
{ name: 'oreore' }

설치 방법



설치 방법을 간단하게 개설해 둡니다. 해야 할 일은 패키지 설치 및 Firebase 서비스 계정의 키 배치입니다.

패키지 설치



여기서 사용하는 것은 이 두
npm i firebase-admin --save
npm i await-outside --save

빨리 설치.

서비스 계정의 키 배치



Firebase 콘솔에 로그인하고 사이드 메뉴에서 Settings>ユーザーと権限 를 따라 新しい秘密鍵の生成 를 클릭합니다.



여기에서 얻은 json을 .service-account.json라는 이름으로, 처음의 db 스크립트와 같은 디렉토리에 배치합니다. 이 파일은 기밀 정보를 포함하고 있으므로 잊지 말고 gitignore 할 때합시다.

아, db 스크립트에 실행 권한을주는 것도 잊지 마세요.

이상

Special Thanks


  • htps : // 코 m / 마루 레 / ms / 5 아베 아 2f86f5에 44 아 2591
  • h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 8425102 / HO W-D-I-A-d-my-sc pt-in-t--- js-re pl
  • 좋은 웹페이지 즐겨찾기