📅  最后修改于: 2023-12-03 15:15:05.019000             🧑  作者: Mango
Firebase 是一个由 Google 开发的移动应用后端云服务平台,其中包括实时数据库、身份验证、云存储、云函数等功能。在进行 Firebase 开发工作时,首先需要进行 Firebase 环境设置。
在 Firebase 控制台 中,点击“添加项目”按钮创建一个新的 Firebase 项目。在创建项目时,可以选择项目的名称和默认的 Google Analytics 选项。创建完成后,可以在控制台的项目概览页面获得项目的项目 ID。
Firebase SDK 可以通过以下方式进行下载:
使用 Firebase CLI 工具进行下载:使用以下命令下载 Firebase CLI 工具,然后在命令行中执行 firebase init
命令进行下载。
npm install -g firebase-tools
在 Firebase 控制台中下载 SDK:在控制台的“项目设置”页面,选择“SDK 设置”选项卡,在其中找到需要使用的 Firebase 产品并下载相应的 SDK。
将下载的 Firebase SDK 添加到项目中,可以通过以下方式进行:
在网页前端中使用 CDN 引入 Firebase SDK :在 HTML 文件中添加以下代码:
<script src="https://www.gstatic.com/firebasejs/8.3.0/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.3.0/firebase-analytics.js"></script>
<!-- Add additional Firebase SDKs that you want to use -->
在本地项目中使用 NPM 安装 Firebase SDK :在项目的根目录下通过以下命令安装 Firebase:
npm install --save firebase
然后在 JavaScript 代码中引入 Firebase SDK:
import firebase from 'firebase/app';
import 'firebase/auth'; // 如果需要使用身份验证功能
import 'firebase/firestore'; // 如果需要使用云数据库功能
// Add additional Firebase SDKs that you want to use
在 JavaScript 代码中对 Firebase 进行初始化:
const firebaseConfig = {
apiKey: "API_KEY",
authDomain: "PROJECT_ID.firebaseapp.com",
projectId: "PROJECT_ID",
storageBucket: "PROJECT_ID.appspot.com",
messagingSenderId: "SENDER_ID",
appId: "APP_ID",
measurementId: "G-MEASUREMENT_ID",
};
firebase.initializeApp(firebaseConfig);
其中,apiKey
、authDomain
、projectId
和 appId
是在 Firebase 控制台中创建项目时自动生成的,measurementId
是用于 Google Analytics 的 ID,可选。
在完成以上步骤后,就可以在项目中开始使用 Firebase 了。不同的 Firebase 产品需要进行不同的设置和初始化。例如,如果想要使用身份验证产品,需要先配置身份验证提供商并在初始化 Firebase 时添加身份验证 SDK;如果想要使用云数据库产品,则需要初始化云数据库 SDK 并在代码中使用相关方法来读取或写入数据。
const provider = new firebase.auth.GoogleAuthProvider();
firebase.auth().signInWithPopup(provider)
.then((result) => {
// This gives you a Google Access Token. You can use it to access the Google API.
const credential = result.credential;
const token = credential.accessToken;
// The signed-in user info.
const user = result.user;
// ...
}).catch((error) => {
// Handle Errors here.
const errorCode = error.code;
const errorMessage = error.message;
// The email of the user's account used.
const email = error.email;
// The AuthCredential type that was used.
const credential = error.credential;
// ...
});
// Initialize Cloud Firestore through Firebase
const db = firebase.firestore();
db.collection("users").get().then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(`${doc.id} => ${doc.data()}`);
});
});