[AWS Amplify] 無限ループでフリーズしてログインできない問題
AWS Cognito + Amplify + React で作ったログイン画面を使っていたが、たまにログイン画面が表示されないままフリーズする現象が発生していた。この問題を解決したのでメモ。
ライブラリ
事象発生時のライブラリ
@aws-amplify/ui-react@2.15.4
@aws-amplify/ui@3.6.4
ログイン画面
ログイン画面は AmplifyAuthenticator
使うやつ。
<AmplifyAuthenticator>
<AmplifySignUp/>
</AmplifyAuthenticator>
問題
発生条件が分からなかったのだが、 amplify-ui で issue が出ていた。
fix(authenticator): fix infinite loop on refresh after refresh token expires
リフレッシュトークンの有効期限が切れた状態で、画面をリロードしたり、開こうとすると無限ループが発生する。
ということのようだ。
試しに、ログイン状態のままリフレッシュトークンの有効期限が切れまで待って、ページをリロードしたり開きなおしたりしてみた。
100 % ページ開かなった。。。
解決方法
@aws-amplify/ui@3.8.2 以上にバージョンアップする。
バージョン 3.8.2 でこのバグが fix されている。