Next.js와 함께 Firebase 관리자 사용

Next.js 스타터 초기화




npx create-next-app project-name


Firebase 관리자 설치




npm install firebase-admin


Firebase 구성 생성




// File: lib/fireConfig.js

export const fireConfig= {
// Place the json obtained as in
// https://firebase.google.com/docs/admin/setup#initialize-sdk
}


firebase.js 만들기




// File: lib/firebase.js

import admin from 'firebase-admin'
import { fireConfig } from './fireConfig'

try {
  admin.initializeApp({
    credential: admin.credential.cert(fireConfig),
  })
  console.log('Initialized.')
} catch (error) {
  /*
   * We skip the "already exists" message which is
   * not an actual error when we're hot-reloading.
   */
  if (!/already exists/u.test(error.message)) {
    console.error('Firebase admin initialization error', error.stack)
  }
}

export default admin


Next.js API 경로에서 firebase-admin 사용




// File: pages/api/tryFirebaseAdmin.js

import admin from '@/lib/firebase'

export default async function handler(req, res) {
    const firebase = admin.firestore()

    // Return promise to handle serverless function timeouts
    return new Promise((resolve, reject) => {
       firebase
        . // set of operations
        .then(() => {
          res.status(200).json({ data })
          res.end()
          resolve()
        })
        .catch((e) => {
          res.status(405).json(e)
          res.end()
          resolve()
        })
    }

}


예시



이 페이지 자체는 firebase-admin 및 Next.js를 사용하여 서버 측 데이터 가져오기에서 데이터를 가져옵니다. 의견에 문제를 추가하거나 [email protected]으로 이메일을 보내주십시오. rishi-raj-jain/rishi.app에서 내 포트폴리오 코드 찾기

좋은 웹페이지 즐겨찾기