Okhttp 2.6.0+ では HTTPリクエスト/レスポンスのログ出力が可能なのだが,
New Logging Interceptor. The logging-interceptor subproject offers simple request and response logging. It may be configured to log headers and bodies for debugging. It requires this Maven dependency:
HttpLoggingInterceptor logging = new HttpLoggingInterceptor(); logging.setLevel(Level.BASIC); client.networkInterceptors().add(logging);
okhttp/CHANGELOG.md at master · square/okhttp
残念なことに retrofit 2.0.0-beta2 での同梱は 2.5.0 .
<!-- Dependencies --> <android.version>4.1.1.4</android.version> <android.platform>16</android.platform> <okhttp.version>2.5.0</okhttp.version> <animal.sniffer.version>1.14</animal.sniffer.version>
retrofit/pom.xml at master · square/retrofit
なので logging-interceptor 2.6.0 で.
<dependency> <groupId>com.squareup.okhttp</groupId> <artifactId>okhttp</artifactId> <version>${project.version}</version> </dependency>
okhttp/okhttp-logging-interceptor at master · square/okhttp
compile 'com.squareup.okhttp:logging-interceptor:2.6.0'
HttpLoggingInterceptor logging = new HttpLoggingInterceptor(); logging.setLevel(Level.BASIC); OkHttpClient client = new OkHttpClient(); httpClient.interceptors().add(logging); Retrofit retrofit = new Retrofit.Builder() .baseUrl(API_BASE_URL) .addConverterFactory(GsonConverterFactory.create()) .client(httpClient) .build();
出力.
... 11:33:04.547 17090-17108 D/OkHttp: <-- HTTP/1.1 200 OK (469ms, 259-byte body) 11:33:04.550 17090-17296 D/OkHttp: --> GET /v5/item/1072964 HTTP/1.1 11:33:04.563 17090-17263 D/OkHttp: <-- HTTP/1.1 200 OK (250ms, 244-byte body) 11:33:04.566 17090-17108 D/OkHttp: --> GET /v5/item/1073510 HTTP/1.1 11:33:04.606 17090-17265 D/OkHttp: <-- HTTP/1.1 200 OK (252ms, 228-byte body) 11:33:04.609 17090-17263 D/OkHttp: --> GET /v5/item/1072585 HTTP/1.1 11:33:04.794 17090-17296 D/OkHttp: <-- HTTP/1.1 200 OK (244ms, 183-byte body) 11:33:04.796 17090-17265 D/OkHttp: --> GET /v5/item/1073275 HTTP/1.1
stable で対応するのかな.
【Retorofit】コピペで使える NetworkModule【Dagger Hilt】
👉 https://t.co/zf9cpgxPEG #kotlin #android #プログラミング— chanzmao (@maochanz) March 17, 2022