contentみんたくみんたくの技術ブログGoogleログイン認証をTypeScriptで実装する2023年8月17日Firebaseメモ的な感じでGoogleログイン認証をTypeScriptで実装した内容をまとめます。Authenticationを使用しています。AuthenticationでGoogle認証した後、DBにユーザー情報を問い合わせます。ユーザー情報がなかったら新規登録としてユーザ登録します。ユーザーログイン認証完了後はmypageに遷移し、認証情報をstateに登録します。this.userGateway.getUserByUid(uid)this.authPresenter.storeAuth(authAccount!)}ちちなみにUseCaseのUTはこんな感じになりました。あと登録パターンなどのシナリオがいくつかあるといった感じです。Architecutureをベースにレイヤリングしているので、テストは書きやすかったです。AuthenticationにGoogle認証しているところをピックアップして、Gatewayの実装を取り上げます。Authenticationを呼び出した返り値を、このアプリケーション内のコアとなるDomainに変換してUseCaseに返します。Gatewayが外部とアプリケーションの境界部分を担っている感じです。今回は、CredentialUserというDomainに変換して、UseCaseに返しています。CredentialUser}Driverで実際にGoogle認証する実際にGoogle認証するのはこのDriverになります。DriverではGoogleAuthProvider()からsignInWithPopup()を呼び出し、認証した結果を返します。本来はDriverで使用するエンティティを用意して、その型に詰めてからGatewayに返してあげる方が、アプリケーションとサードパーティとの切り分けができてより良い気もしますが、一旦ここではそのままGatewayに返しています。userCredentialWithGoogle}すんごいざっくりですが、メモ的な感じでまとめました。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。