強大的用戶身份驗證對於應用程序安全至關重要。從頭開始構建此功能是耗時且複雜的,從而增加了安全漏洞的風險。 Firebase大大簡化了此過程,為用戶身份管理提供了簡化的方法。本教程演示瞭如何使用Firebase V9的模塊化API實施用戶註冊,驗證和身份驗證。
該教程假設熟悉React,React鉤子和Firebase V8。您需要安裝一個Google帳戶和Node.js。
目錄
設置firebase
項目設置
克隆啟動器存儲庫:
git克隆-b啟動器https://github.com/tammibriggs/firebase_user_auth.git CD FIREBASE_USER_AUTH NPM安裝
這包括package.json
中的firebase v9。運行npm start
啟動應用程序。
火基整合
src
目錄中創建firebase.js
。// src/firebase.js 從'firebase/app'導入{initializeapp}; 從'firebase/auth'導入{getauth};
// src/firebase.js const firebaseconfig = { / *您的config在此處 * /}; const app = initizeApp(firebaseconfig); const auth = getauth(app); 導出{auth};
用戶註冊
Register.js
組件使用createUserWithEmailAndPassword
(firebase v9)。密碼驗證可確保匹配密碼。註冊功能處理用戶創建和錯誤處理。表格的onSubmit
事件觸發註冊過程。
用戶狀態管理(REACT上下文API)
AuthContext.js
文件提供了用於管理用戶狀態的上下文。 AuthProvider
共享用戶狀態, useAuthValue
訪問它。 App.js
用AuthProvider
包裝組件,並且onAuthStateChanged
更新用戶狀態。
電子郵件驗證
註冊後, sendEmailVerification
發送驗證電子郵件。用戶被重定向到A /verify-email
頁面。此頁面使用useEffect
和狀態管理以防止限制速率,以60秒的冷卻方式顯示用戶的電子郵件和“重新啟動電子郵件”按鈕。經過驗證後,用戶將自動重定向到其配置文件。
個人資料頁面
Profile.js
組件使用useAuthValue
顯示用戶電子郵件和驗證狀態。 “簽名”按鈕利用Firebase的signOut
。
私人路線保護
PrivateRoute.js
限制了對配置文件頁面的訪問,以使用Redirect
驗證用戶。 App.js
路由已更新以將PrivateRoute
用於配置文件組件。
登錄功能
Login.js
組件使用signInWithEmailAndPassword
。登錄後,它將檢查電子郵件驗證並在必要時重定向到/verify-email
,開始60秒的倒計時。
概括
本教程提供了使用Firebase V9在React應用程序中實現安全用戶身份驗證的綜合指南。使用Firebase的使用可顯著簡化該過程,從而提供強大而有效的解決方案。
進一步閱讀
以上是用firebase並進行反應的用戶註冊的詳細內容。更多資訊請關注PHP中文網其他相關文章!