yumemi-inc / android-training-template

Apache License 2.0
13 stars 2 forks source link

Interceptorの追加 #25

Open Seo-4d696b75 opened 1 year ago

Seo-4d696b75 commented 1 year ago

OkHttpのInterceptorを活用しましょう

[!NOTE]

Required(先に完了させましょう)

  • 24

課題内容

Retrofitで実装したAPI呼び出しでは、内部的にOkHttpライブラリを利用してHTTP通信を実装しています(Square Open Sourceという同じ開発元のライブラリです)。OkHttpのInterceptorを利用すると通信リクエストの発生・レスポンスを受け取り・エラーの発生など様々なタイミングに自由な処理を挟むことができます。

[!TIP] Application / Network Interceptorの使い分けを意識してみましょう

ログ出力

HttpLoggingInterceptorを利用して通信ログをLogcatで見てみます🔍

image

クエリパラメータの付与

APIリクエストにはAPI key appid, 言語指定lang, 単位指定unitsと共通のクエリを追加しています。Interceptorでリクエストに一括でクエリを付与すれば各エンドポイントで個別に指定せず済みます 😎

参考資料