前提条件
useRefreshTokens を有効にする
createAuth0Client の useRefreshTokens オプションを使用します。既定値は false です。このオプションが false に設定されている場合、getTokenSilently() が呼び出されて新しい が必要になると、SDK は隠し iframe と prompt=none を使って新しいアクセストークンの取得を試みます。
このオプションを true に設定すると、loginWithRedirect(), loginWithPopup(), getTokenSilently() の使用時に offline_access スコープが自動的にリクエストされます。getTokenSilently() が呼び出され、アクセストークンの有効期限が切れている場合、SDK はキャッシュ内のリフレッシュトークンとともに refresh_token グラントタイプを使用して /token エンドポイントを呼び出し、ID トークンとアクセストークンの更新を試みます。
サイレント再認証は、認証リクエストに prompt=none パラメーターを送信し、隠し iframe を使用することで実現されます。これが可能なのは、 上にアクティブなユーザーセッションがある場合です。useRefreshTokens を true に設定していてもキャッシュ内にリフレッシュトークンがない場合、SDK は iframe メソッドを使用します。これにより、ユーザーに再度ログインさせることなく、リフレッシュトークンの使用へシームレスに移行できます。
useRefreshTokens が true であるにもかかわらずキャッシュ内にリフレッシュトークンがないために交換に失敗した場合は、iframe メソッドにフォールバックします (この方法も、サードパーティ Cookie がブロックされていると失敗する可能性があります) 。