Skip to main content
Auth0 Advanced Customization of Universal Login (ACUL) の画面で、 MFA(多要素認証)のプッシュ通知ポーリング(プッシュ通知での承認待ちなど)を管理するための React フックです。このフックは長時間動作するポーリングループをセットアップして制御し、次のいずれかが発生するまで MFA プッシュチャレンジのエンドポイントを繰り返しチェックします。
  • チャレンジがユーザーによって承認または拒否されると、options.onCompleted が呼び出されます。
  • エラー(ネットワークエラー、200/429 以外のレスポンス)が発生すると、options.onError が呼び出されます。
  • コンポーネントがアンマウントされるか stopPolling() が呼び出されると、ポーリングがキャンセルされます。

主な機能

  • isRunningリアクティブに変化します — ポーリングループが内部的に停止した場合やキャンセルされた場合、自動的に更新されます。
  • React の再レンダー中に重複したネットワーク呼び出しや意図しない再起動を防ぐために、 安定した単一のポーリングインスタンスuseRef)を使用します。
  • アンマウント時に自動的にクリーンアップされます:孤立したタイマーやリークした XHR リクエストは発生しません。

パラメータ

ポーリング間隔、成功時のコールバック関数(onCompleted)、および任意のエラーハンドラー(onError)を指定する MfaPollingOptions

戻り値

MfaPollingResult次の内容を含む MfaPollingResult オブジェクト:
  • isRunning — ポーリングがアクティブな間は true
  • startPolling() — ポーリングを開始または再開します。
  • stopPolling() — 直ちにポーリングを停止します。

対応している画面

  • mfa-push-challenge-push
  • reset-password-mfa-push-challenge-push
  • mfa-push-enrollment-qr
Example

備考

  • onError コールバックは、サーバーレスポンスを説明する statusresponseText を含む ULError オブジェクトを受け取ります。
  • 内部のレート制限レスポンス(429)は自動的に処理されます。 ポーリングはリセットウィンドウまで待機してから再試行します。
  • 実行中に startPolling() を繰り返し呼び出しても安全であり、その動作は冪等です。