エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
通信周りの処理をミドルウェアで整理する - AnyType
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
通信周りの処理をミドルウェアで整理する - AnyType
課題感 APIリクエストの送信前、APIレスポンスの取得後にさまざまな処理をはさみたいことがある。例えば... 課題感 APIリクエストの送信前、APIレスポンスの取得後にさまざまな処理をはさみたいことがある。例えば、こんな処理だ。 ネットワークインジケータの表示・非表示 リクエストとレスポンスのロギング 二重送信の防止 ログイントークンが有効期限切れだったときに、リフレッシュトークンを使ってログイントークンを更新した後、再送 HTTPリクエストのスタブ ただ、こういった処理をAPIクライアントにそのまま実装していくとAPIクライアントが肥大化するし、かと言ってViewControllerに実装するといろんな箇所で似たようなコードを書くことになる。 解決策 APIクライアントをラップして機能を拡張するミドルウェアをつくる。ミドルウェアはAPIクライアントを呼び出して通信処理を実行しつつ、リクエストの送信前とレスポンスの取得後に処理をはさむ。 例えば、APIClientというオブジェクトで本来の通信処