ウィジェットからの起動時にbad requestが発生する
(不具合確認内容)
エミュレータにて不具合確認
- エミュレータへ新しくアプリをインストールして実行
- ログイン → アプリをバックグラウンドへ → ウィジェットからの起動時に頻度は少ないが
Bad Request 400エラーが出ることを確認
(原因)
- setCookie()メソッドによって、Cookie(セッションID)がセットされるタイミングが非同期で、セットされる前にウィジェットから起動、ログインするとセッションIDがないままログイン処理に入るためBad Request 400エラーが発生する
⇒ 下記URLを参考に、すぐにセッションIDをセットするよう修正
https://tech-blog.rakus.co.jp/entry/20210325/kotlin
⇒ 動作確認(エミュレータにて繰り返しウィジェットからログイン)を行ってBad Requestが見られなくなったことを確認
- ただし、上記の対応のままでは、アプリ起動 → ログインボタン押下 → 直後にアプリをバックグラウンド起動 → ウィジェットから起動した場合に、セッションIDがセットされる前にログイン処理が行われ、Bad Requestが発生する
(修正方針)
LoginFragment.ktにて、
- Cookieを取得し、セットされていたらログイン、書類一覧表示する
- セットされていなかったら、Session情報取得APIからセッションIDを取得し、Cookieへセット、ログイン、書類一覧を表示する
を行うように修正する
sbc-atled-aw-devによってに編集されました