Express 앱에서 Firestore 데이터베이스를 만들고 연결하는 방법은 무엇입니까?
이 가이드에서는 expressjs 앱을 만들고, Firestore 데이터베이스를 만들고 연결한 다음, 테스트를 위해 일부 데이터를 저장하는 데 필요한 모든 단계를 보여드리겠습니다.
우선 익스프레스 앱을 만들어 봅시다.
폴더 내에서 다음을 실행합니다.
npm init && npm install express --save
Express 앱을 초기화하기 위해 index.js라는 파일을 생성합니다.
다음으로 express 앱 내부에 firesbase-admin 모듈을 설치해야 합니다.
npm install firebase-admin --save
방금 설치한 모듈은 데이터베이스와 상호 작용하는 데 필요한 몇 가지 내장 메서드에 대한 액세스를 제공합니다. 이러한 메서드는 다음과 같습니다. initializeApp, cert 및 getFirestore는 다음을 사용하여 언급된 메서드를 분해합니다.
const express = require("express");
const app = express();
const { initializeApp, cert } = require("firebase-admin/app");
const { getFirestore } = require("firebase-admin/firestore");
다음으로 firestore 실시간 데이터베이스에 액세스하기 위해 firebase 프로젝트를 만들어야 합니다.
Sample-project라는 프로젝트를 만든 후 Firestore에 연결할 웹 앱을 만들어야 합니다.
웹앱을 만든 후 프로젝트 개요에 액세스하여 여기에서 Firestore 데이터베이스를 만들 수 있습니다.
다음으로 해야 할 일은 데이터베이스와 상호 작용할 새 서비스 계정 키를 생성하는 것입니다. 여기에서 다운로드하고 프로젝트에서 원하는 대로 이름을 지정할 수 있습니다. 제 경우에는 이름을 serviceAccountKey.json으로 지정했습니다.
여기에서 프로젝트 설정으로 이동한 다음 서비스 계정으로 이동하고 아래 이미지에 표시된 새 키 생성을 클릭합니다.
serviceAccountKey를 다운로드하라는 메시지가 표시되며 프로젝트 내에서 다운로드해야 합니다.
다음으로 다음과 같이 익스프레스 앱에 키를 포함해야 합니다.
const serviceAccount = require("./serviceAccountKey.json");
관리자 권한으로 앱을 초기화하려면 다음과 같이 앱을 초기화해야 합니다.
initializeApp({
credential: cert(serviceAccount),
databaseURL: process.env.databaseURL
});
프로젝트 ID + ".firebaseio.com"을 추가하기만 하면 데이터베이스 URL을 얻을 수 있습니다.
위의 스크린샷에 언급된 대로 프로젝트 설정으로 이동하여 프로젝트 ID를 얻을 수 있습니다.
마지막으로 이 모든 단계를 거쳐 앱에서 데이터베이스와 통신할 수 있는 firestore 인스턴스를 얻는 마지막 단계에 도달했습니다.
const db = getFirestore();
이제 새 컬렉션을 만들고 테스트를 위해 일부 문서를 여기에 삽입하는 첫 번째 요청을 할 시간입니다.
app.post("/testDB", (req, res) => {
let setDoc =
db.collection('testCollection').doc('testDoc').set(req.body);
res.send({'Message': 'Success'});
});
이 가이드가 마음에 드셨기를 바라며 이에 대한 귀하의 의견을 찾고 있습니다. 추가할 사항이 있으면 주저하지 말고 의견을 남겨주세요. 감사합니다 :).
Reference
이 문제에 관하여(Express 앱에서 Firestore 데이터베이스를 만들고 연결하는 방법은 무엇입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ikramkharbouch/how-to-create-and-connect-to-a-firestore-database-in-an-express-app--4j84텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)