지금 까지는 firebase 에서 지원해주는 기능들을 이용해 서버를 따로 만들지 않고 여러 동작을 수행 할 수 있었지만
규모가 커질수록 서버기능은 필수 적으로 들어가야 하기 때문에 firebase에서 지원하는 functions 를 이용하면 자체적으로 서버 기능을 만들 수 있다.
하지만 functions 는 blaze 요금제로 업그레이드를 시켜줘야 할 수 있기 때문에 요금제 업그레이드를 시켜준다.
이용자수가 엄청나게 많은 사이트를 만드는게 아니라면 요금이 부과될 일이 거의 없기 때문에 요금문제는 걱정하지 말고 카드 등록만 해주면 된다.
그럼 이제 프로젝트 폴더 명령창으로 돌아와서 functions를 설치를 해줘야 하는데
처음 프로젝트를 만들 때 functions 를 선택해서 만들었다면 이 작업을 하지 않아도 된다.
firebase init
위 명령어를 입력하면 프로젝트 생성했던 단계를 다시 할 수 있다.
그러면 functions 만 선택해서 엔터를 눌러 주고 npm으로 설치를 할 것이냐고 물어보면 y를 누르고 엔터!
그럼 설치가 끝나고 프로젝트 폴더에 functions 라는 폴더가 생길 것이다.
functions 폴더 아래 index.js 파일에서 서버기능을 만들어 주면 된다.
위와 같이 index.js 파일을 수정 해 준다.
간단하게 설명 하자면 우리가 /hello 라는 url 로 들어가게 되면 "Hello Firebase Functions" 가 화면에 찍히게 하는 코드이다.
위에 region('asia-northeast3') 이라는 코드는 한국 서버에 올려 달라는 뜻이다. 저 코드를 안쓰게 되면 미국 서버에 올라가게 될 것이다.
그 다음 실행을 하기 위해선 functions 를 먼저 배포해줘야 한다.
firebase deploy --only functions
위 명령어를 입력 하면 배포가 실행 되고 서버 URL이 나온다.
배포가 완료가 되고 생성된 URL을 클릭해 보면 브라우저에 우리가 입력한 Hello Firebase Functions 가 잘 나오는걸 확인 할 수 있다.
functions 로 할 수 있는 것들은 firestore create, update, delete, 회원가입, 로그인, Storage 업로드등을 감지 할 수 있고 그 때마다 수행할 로직을 만들어 줄 수도 있다.
방법을 알았으니 이제 공식문서등을 확인해 기능들을 직접 구현해 보면 좋을 것 같다.
'프로그래밍 > firebase' 카테고리의 다른 글
[firebase] Hosting 으로 배포 하기 (0) | 2021.09.26 |
---|---|
[firebase] Authentication 회원가입, 로그인, 로그아웃 (0) | 2021.09.24 |
[firebase] storage 파일 업로드 (0) | 2021.09.24 |
[firebase] firestore DB 데이터 수정, 삭제 (0) | 2021.09.24 |
[firebase] firestore DB 데이터 읽기, 쓰기 (0) | 2021.09.24 |