ユーザーは Firebase SDK を使用してクライアント側で認証します。
サーバー側にはnodejsがあり、SDKもインストールされています。データベースを使用できるため、このサーバー コードは機能します:
リーリーこのコードは機能します。
これはユーザー情報を取得する (高速化) ルートです:
リーリーユーザー変数は常に空です。
この問題に対処する正しい方法は何ですか?
この状況にもっと一般的に対処するにはどうすればよいでしょうか?
P粉3602660952023-09-09 13:15:25
aannabeengineer が正しいです。これは概念実証です (ユーザー認証と情報取得後にサーバー側のコードを調整する必要があります)。
###サーバ:### リーリー ###フロントエンド:### リーリーはい、現在サーバー側で firebase admin を使用しています (「firebase」はサーバー上のインスタンスです)。
P粉1419112442023-09-09 12:18:05
サーバー側でユーザーを認証するには、JWT クライアントを生成し、サーバー上でそれを検証する必要があります。 まず、クライアント側で IdToken p> を生成します。
次に、リクエスト内のトークンをサーバーに送信します。これにはベアラー認証を使用できます (HTTP ヘッダーとして送信されます。Authorization: Bearer)
サーバー上では、任意の JWT ライブラリを使用してトークンを検証できます。 Firebase SDK を使用する場合は、正しい SDK を使用する必要があります。 「firebase/compat/auth」はクライアント用です。 Firebase Management SDKが必要です。 次のリンクでは、Firebase Admin Validation ID Token SDK を使用する方法を説明しています