1

これは私を完全に不愉快にしています。 firebase電子メールシステムを使用して、言語やテンプレートを変更することができないため、アカウントの検証電子メール、電子メールリセット、電子メールの変更についてユーザーに通知することはできません。そこで私はSparkpostを使い始めました。 私はすでにその機能のほとんどを構築しましたが、私はこのアクションの確認コードを取得できませんでした。カスタムFirebase登録確認/検証/電子メールリセットを構築するには

電子メールシステムを使用せずにこれらの機能を使用する方法はありますか?私はどのような方法で、私は私の上でユーザーまたは変更パスワードを検証するためにsparkpostメールシステムと角度ページのミックスを使用することができ、このコードを入手できる場合

[confirmPasswordReset(code, newPassword)][3] 
[checkActionCode(code)][2] 
[applyActionCode(code)][1] 

:私は、どのような方法で実行するために必要な「コード」を取得することができますイオンアプリ。または、この操作を行うノードエンドポイントを作成することができます。

私は本当に助けが必要です。

答えて

1

パブリックAPIを使用して確認コードを取得することはできません。

しかし、あなた Node.js.ためFirebase管理SDKを使用して(checkActionCode/applyActionCodeを呼び出さずに)直接あなたのサーバー側のコードでユーザーアカウントを確認することができますdocumentation on updating a userから

updateUser()方法では、既存のユーザーのデータを変更することができます。独自の検証メカニズムを構築することができますこれにより

admin.auth().updateUser(uid, { 
    email: "[email protected]", 
    emailVerified: true, 
    password: "newPassword", 
    displayName: "Jane Doe", 
    photoURL: "http://www.example.com/12345678/photo.png", 
    disabled: true 
}) 
    .then(function(userRecord) { 
    console.log("Successfully updated user", userRecord.toJSON()); 
    }) 
    .catch(function(error) { 
    console.log("Error updating user:", error); 
    }); 

をして、単にあなたがしているいったんユーザーのステータスを更新します。これは、ユーザーが更新するだけでなく、UserRecordプロパティを含むオブジェクトを更新するためのuidを受け入れます完了しました。

+0

ありがとう、これは実際には私がドキュメントを作成し、アカウントを有効にするために自分の検証キーを格納することができますので、私は多くの助けになります。 リセットについて、私はそれが私が変更できる唯一の電子メールテンプレートであることを知りました。おかげさまで – moplin

+0

私は管理者ノードパッケージをアップロードしたラムダサービスの作成を終了しました。サーバーレスのアプリケーションからユーザーを管理できるようになりました。 ありがとうございます。 – moplin

+0

それはかなり涼しいパブロと聞こえる!あなた自身の答えやそれについてのブログ記事を書いているように感じたら、もっと多くの人に役立つだろうと確信しています。 –

関連する問題