【FirebaseAuth】getAuthでユーザー取得時に匿名かどうかの判別方法

image

Firebaseを使って開発の中で、getAuthで取得してきたユーザー情報から匿名かそうでないかの判別方法を模索している中で、あんまり解説記事がなかったので、備忘録として残しておこうと思います。 今回は、TypeScriptを使って解説していきます。

ユーザー取得方法

まず、getAuthをインポートします。 getAuthメソッドの中にあるgetUserメソッドにユーザーIDを渡してあげることでuserRecord(ユーザー情報)が取得できます。

import { getAuth } from 'firebase-admin/auth'

const userRecord = await getAuth().getUser(userId)

匿名判別

先ほど取得したuserRecordの中にあるproviderDataというプロパティで匿名の判別が可能です。 providerDataとは、ログインしたフォーマット(googleやappleなど)の数が格納されています。匿名の場合は数が0になるので、length === 0とすることで判別が可能です。

providerData

const isAnonymous = userRecord.providerData.length === 0

さいごに

Firebaseを使って、アプリやWEBサイトに匿名機能をつけると、匿名ユーザーのみに処理を走らせたい時が出てくると思いますので、その時にご参考になれば幸いです。Firebaseは、取得したいプロパティがなかったりして少し考えないといけない場合が出てくるので、苦しい時がありますw 最近可茂IT塾では、FlutterよりNext.jsや、Node.jsなどTypeScriptやJavaScriptを触る機会が増えてきて、スキルアップできる機会が多くなりました。まだまだ、未熟者ですがこれからブログにも残していきたいと思います!

お知らせ

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More

タグ

Flutter (79)初心者向け (23)イベント (15)Google Apps Script (8)Nextjs (8)Firebase (7)可茂IT塾 (6)React (6)riverpod (4)JavaScript (4)新卒 (3)就活 (3)給与支払報告書 (3)FlutterWeb (3)Next.js (3)Dart (3)TypeScript (3)ワーケーション (3)インターン (3)設計 (2)線型計画法 (2)事例 (2)画像 (2)Figma (2)デザイン (2)アプリ開発 (2)React Hooks (2)tailwindcss (2)社会人 (2)大学生 (2)お知らせ (2)webfeed (1)RSS (1)CodeRunner (1)VSCode (1)個人開発 (1)フルリモート (1)学生向け (1)useSWR (1)supabase (1)Java (1)Spring Boot (1)エンジニア (1)DeviceOrientation (1)正規表現 (1)神楽 (1)趣味紹介 (1)プログラミングだけではない可茂IT塾のメンバー (1)PreferredSize (1)マテリアルデザイン (1)Material (1)クパチーノデザイン (1)Cupertino (1)ListView (1)就活浪人 (1)既卒 (1)保守性 (1)シェアハウス (1)スクレイピング (1)PageView (1)画面遷移 (1)flutter_hooks (1)Gmail (1)Googleグループ (1)GoogleWorkspace (1)ShaderMask (1)google map (1)Google Places API (1)GCPコンソール (1)Google_ML_Kit (1)Vercel (1)Google Domains (1)branch (1)Git (1)オンラインオフィス (1)LINE (1)Freezed (1)アイコン (1)debug (1)Apple Store Connect (1)FlutterGen (1)Image (1)Uint8List (1)File (1)検索機能 (1)rating_bar (1)評価バー (1)OrientationBuilder (1)Navigator (1)メール送信 (1)Material Design (1)カスタム認証 (1)アニメーション (1)FloatingActionButton (1)Arduino (1)ESP32 (1)経験談 (1)フリーランス (1)Dialog (1)Slack (1)BI (1)非同期処理 (1)BackdropFilter (1)iOS (1)レビュー (1)getAuth (1)匿名 (1)Algolia (1)chakra-ui (1)コンサルティング (1)Symbol (1)reactive_forms (1)

お知らせ

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More