Firebase - Functions

Firebase 의 Fuctions 를 시작하려하면 아래와 같은 화면이 뜬다.

 

1. npm을 통해 firebase-tools를 설치해준다.

npm install -g firebase-tools

일단 설치하면 어느 디렉토리에서도 사용가능하다.

이제 프로젝트 디렉토리로 이동해보자.

 

2. 이동했다면 로그인을 하자. 로그인을 먼저하고 이동해도 상관없다 ^^

firebase login

인터넷창이 켜질꺼고 로그인을 하면 완료 메시지가 나타날 것이다.

 

3. 프로젝트 디렉토리로 이동한 후, init명령어를 이용해 functions폴더를 만들어보자. (자바스크립 선택)

firebase init functions

해당 명령어를 통해 종속된 항목들까지 설치가 되고 프로젝트에

.firebaserc 파일

firebase.json 파일

functions/ 디렉토리가 생성된다.

 

4. functions 디렉토리 안에 index.js 파일에 아래 소스를 추가한다.

 

// The Cloud Functions for Firebase SDK to create Cloud Functions and setup triggers.
const functions = require('firebase-functions');
// The Firebase Admin SDK to access the Firebase Realtime Database.
const admin = require('firebase-admin');
admin.initializeApp();

 

 

여기서 프로젝트를 초기화 하면되는데 

아래와 같은 소스(함수)도 추가해 준다.

 

// Take the text parameter passed to this HTTP endpoint and insert it into the
// Realtime Database under the path /messages/:pushId/original
exports.addMessage = functions.https.onRequest(async (req, res) => {
  // Grab the text parameter.
  const original = req.query.text;
  // Push the new message into the Realtime Database using the Firebase Admin SDK.
  const snapshot = await admin.database().ref('/messages').push({original: original});
  // Redirect with 303 SEE OTHER to the URL of the pushed object in the Firebase console.
  res.redirect(303, snapshot.ref.toString());
});

 

이제 프로젝트를 초기화 해주고 배포를 해야되는데 Windows에선 배포가 에러가 난다.

firebase.json 파일에서 해당 소스를 제거해주자.

"predeploy": [ "npm --prefix "$RESOURCE_DIR" run lint" ]

 

5. 배포

firebase deploy --only functions

 

배포가 완료되었다.

다음 이시간에...

'Front End > React-Native' 카테고리의 다른 글

React-Native  (0) 2022.02.13
React-Native-Image-Picker  (0) 2020.05.04
react-native-firebase  (0) 2020.04.05
React-Native Redux 설치  (0) 2020.03.24
React-Navigation  (0) 2020.03.15

이 글을 공유하기

댓글

Designed by JB FACTORY