FlutterでのParseユーザーパスワードリセットの実装法
8 分
flutterアプリにユーザーのパスワードリセットを追加する方法 はじめに システムにパスワードを導入すると、ユーザーはそれを忘れてしまうという事実があります。parse serverは、ユーザーが安全にパスワードをリセットできる方法を提供します。 パスワードリセットのフローは、ユーザーのメールアドレスを取得し、 \<font color="#2166ae">requestpasswordreset\</font> メソッドを呼び出すことから始まります。 \<font color="#2166ae">parse user\</font> クラスから。 これにより、指定されたメールがユーザーのメールまたはユーザー名フィールドと一致するかを試み、パスワードリセットのメールを送信します。これにより、ユーザーがメールをユーザー名として使用することを選択するか、別途収集してメールフィールドに保存することができます。 パスワードリセットのフローは次のとおりです ユーザーは、自分のメールアドレスを入力してパスワードのリセットを要求します。 back4appは、特別なパスワードリセットリンクを含むメールをそのアドレスに送信します。 ユーザーはリセットリンクをクリックし、新しいパスワードを入力するための特別なback4appページに移動します。 ユーザーは新しいパスワードを入力します。これで、彼らのパスワードは指定した値にリセットされました。 このガイドでは、 parse server用のflutterプラグイン を使用して、 \<font color="#2166ae">parseuser\</font> クラスを使用してflutterアプリにユーザーのパスワードリセット機能を実装する方法を学びます。 目標 flutterアプリ用にparseを使用してパスワードリセット機能を構築します。 前提条件 このチュートリアルを完了するには、次のものが必要です: flutter バージョン 2 2 x 以降 https //flutter dev/docs/get started/install android studio https //developer android com/studio または vs code をインストール https //code visualstudio com/ ( プラグイン https //docs flutter dev/get started/editor dart と flutter) 前のガイドで作成した flutter アプリ 注意: セッション中の 現在のユーザーを取得 https //app archbee com/docs/ roxiyumxobue9i7uv49e/hzburmiwcukmjmsxudirt に従ってください。 前のガイドを完了して、 \<font color="#2166ae">parseuser\</font> クラスをよりよく理解できるようにしてください。 android または ios を実行しているデバイス(シミュレーターではない)。 パスワードリセットプロセスの理解 パスワードリセットプロセスをよりよく理解するために、前のガイドで始めたアプリケーションの開発を続け、その機能を実装します。 このガイドの主な焦点は flutter と parse の使用であるため、flutter アプリケーションコードについては説明しません。次のステップに従って、back4app データベースでログインおよびログアウトアプリを構築します。 さあ、始めましょう! 次のステップでは、アプリケーションにパスワードリセット機能を構築できるようになります。 1 ログイン/ログアウト/パスワードリセットアプリプロジェクトを開く 前のガイドからflutterプロジェクトを開く 現在のユーザーをセッションで取得 https //www back4app com/docs/flutter/parse sdk/flutter current user%22 「 \<font color="#2166ae">main dart\</font> 」ファイルに移動します。 2 パスワードリセットのためのコード パスワードリセットフローを開始するには、ユーザーのメールアドレスが必要です。「 \<font color="#2166ae">douserresetpassword\</font> 」関数を「 \<font color="#2166ae">main dart\</font> 」ファイル内で検索します。「 \<font color="#2166ae">douserresetpassword\</font> 」内のコードを次のように置き換えます 1 final parseuser user = parseuser(null, null, controlleremail text trim()); 2 final parseresponse parseresponse = await user requestpasswordreset(); 3 if (parseresponse success) { 4 message showsuccess( 5 context context, 6 message 'password reset instructions have been sent to email!', 7 onpressed () { 8 navigator of(context) pop(); 9 }); 10 } else { 11 message showerror(context context, message parseresponse error! message); 12 } この関数を構築するには、次の手順に従います 新しい \<font color="#2166ae">parseuser\</font> クラスインスタンスを次のコマンドで作成します \<font color="#2166ae">parseuser(null, null, controlleremail text trim());\</font> メールフィールドは必須で、他のフィールドにはnullを使用できます。 リカバリーメールを送信するために、「 \<font color="#2166ae">user requestpasswordreset\</font> 」関数を呼び出します。 完全な関数は次のようになります 1 void douserresetpassword() async { 2 final parseuser user = parseuser(null, null, controlleremail text trim()); 3 final parseresponse parseresponse = await user requestpasswordreset(); 4 if (parseresponse success) { 5 message showsuccess( 6 context context, 7 message 'password reset instructions have been sent to email!', 8 onpressed () { 9 navigator of(context) pop(); 10 }); 11 } else { 12 message showerror(context context, message parseresponse error! message); 13 } 14 } テストするには、 \<font color="#2166ae">実行\</font> ボタンをandroid studio/vscodeでクリックします。 「 \<font color="#2166ae">パスワードリセット\</font> 」ボタンをクリックします。 次の画面でユーザーのメールアドレスを入力し、再度「 \<font color="#2166ae">パスワードリセット\</font> 」をクリックします。 完了! このガイドの最後に、back4appを通じてparse serverのコア機能を使用して、アプリのパスワードリセット機能を実装できます!