Moyaを使用して HTTP 操作を処理していますが、通常はrefreshToken()
. リクエストが発生しようとしているときにトークンの有効期限が切れているかどうかを確認していますが、複数のリクエストが発生する可能性があるという問題があります。ネストされた型でチェーンされている場合は問題ありませんが、常にそうであるとは限りません。
より明確にするために、 と があり、それらが別々の操作を実行し、いつでもトリガーできるrequest1()
とrequest2()
仮定します (たとえば、1 つは で呼び出されviewDidLoad()
、もう 1 つは別の で呼び出されますviewDidLoad()
)。これが発生し、トークンの有効期限が切れている場合、更新リクエストは失敗します。(statusCode: 400)
それで、私の質問は、どうすればプロバイダーにrefresh()
操作が完了するのを待つようにさせることができますか?つまり、プロバイダーは他のエンドポイントです。refresh()
エンドポイントがオンになっている場合は、エンドポイントを待機させてください。
これを簡単にする方法を提案していただければ幸いです。