ホームページ >ウェブフロントエンド >jsチュートリアル >Firebase Auth vs Manual Auth:開発者の旅
新しいeコマースプラットフォームを開発し、StockXとeBayの機能をブレンドし、急な学習曲線を提示しました。 私の最初の主要なプロジェクトは、最初に認証を含む完全にカスタム構築されたソリューションを目指していました。しかし、この決定は、手動認証に対するFirebase Authの重要な利点を強調しました。
手動認証:最初の試行
私の最初のアプローチには、データストレージ用のFirebaseとともに、手動認証システムが含まれていました。プロセスは次のとおりでした:
<code class="language-javascript">const submitFormData = async (path, data) => { // Store JWT token localStorage.setItem("token", responseData.data.token); console.log("Redirecting to home page"); location.replace("/"); }; subBtn.addEventListener("click", () => { // Form validation if (!tac.checked) { showAlert("you must agree to our terms and conditions"); } else { loader.style.display = "block"; submitFormData("/signup", { name: name.value, email: email.value, password: password.value, number: number.value, tac: tac.checked, notification: notification.checked, seller: false }); } });</code>
FireBaseからユーザーデータを取得すると問題が発生しました。 ユーザーオブジェクトは一貫して返されました。 デバッグの時間は、私の手動アプローチの限界を明らかにしました。 Firebase Authは、はるかにエレガントなソリューションを提供しました
Firebase Authソリューション:合理化されたアプローチnull
Firebase Authに切り替えると、プロセスが劇的に簡素化されました。 改訂された実装: サインアップ
login
<code class="language-javascript">const auth = getAuth(); createUserWithEmailAndPassword(auth, email.value, password.value) .then((userCredential) => { const user = userCredential.user; loader.style.display = "block"; return submitFormData("/signup", { name: name.value, email: email.value, password: password.value, number: number.value, tac: tac.checked, notification: notification.checked, seller: false }); }) .catch((error) => { showAlert(error.message); });</code>
<code class="language-javascript">signInWithEmailAndPassword(auth, email.value, password.value) .then((userCredential) => { const user = userCredential.user; loader.style.display = "block"; return submitFormData("/login", { email: email.value, password: password.value }); }) .catch((error) => { showAlert(error.message); });</code>
簡略化されたセットアップ:
getAuth()
以上がFirebase Auth vs Manual Auth:開発者の旅の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。