본문 바로가기

other(그 밖의)

firebase cloud function을 이용해 firestore에 데이터 저장하기

반응형

firebase 의 cloud function을 사용하고 firestore 또한 같이 사용하신다면 정말 편리하게 functions 를 확장해 firestore을 같이 사용하실 수 있습니다.

우선 저번 글에서 function를 설정해주셨나요? 아직 설정을 하지 않으셨다면 

https://chicken-coach.tistory.com/15

 

Firebase cloud function 사용방법

필수 설정 1. Node.js 2. npm(Node Package Manager) 3. Firebase project  이 글에서는 위에 필수 설정이 모두 준비 됐다는 가정하에 작성하겠습니다! 설치 우선 npm으로 firebase tool을 다운받습니다 npm inst..

chicken-coach.tistory.com

이제 index.js에서 firestore을 확장해봅시다! 

const serviceAccount = require('./cloud-function-test-c9647-9e51c18a731f.json');

initializeApp({
  credential: cert(serviceAccount)
});

const db = getFirestore();

firestore을 초기화하는 코드 몇줄만 추가한다면 확장이 가능합니다! 

정말 간단하죠?

 

이제 firestore에 데이터를 저장하는 functions를 하나 생성해보겠습니다 

exports.getTest = functions.https.onRequest(async(req,res)=>{
  let docId = req.query.docId;
  let docRef = db.collection("test").doc(docId);
  let docResult = await docRef.get();
  console.log(docResult.data());
})

docid값으로 문서를 조회해서 필드를 가지고 오는 로직입니다 

테스트를 위해서 cloud에 firebase deploy로 배포를 해서 확인하는 방법도 있겠지만 굳이 불편하게 그럴필요 없이 로컬 환경에서 테스트를 지원한답니다 

 

npm install -g firebase-tools

저희는 이미 다운을 받았으니 에뮬레이터를 실행해주면 됩니다 

firebase emulators:start --only functions

입력하신다면 에뮬레이터가 실행이 된답니다

하단에 나오는 링크에 접속을 한다면 로그와 원하는 결과를 얻을 수 있습니다 

 

 

오늘은 간단하게 cloud functions와 firestore 그리고 테스트를 하는 간단한 방법을 적어봤습니다! 

부족한 부분이나 모르시는 부분이 있다면 댓글남겨주세요!

반응형