嘗試在Retrofit 2 中記錄精確的JSON 請求時,通常會遇到預設日誌記錄機制的限制。從 Retrofit 1 中刪除 setLog() 和 setLogLevel() 方法帶來了一些挑戰。
解決方案在於利用 HttpLoggingInterceptor。要進行設定:
implementation 'com.squareup.okhttp3:logging-interceptor:4.11.0'
HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(); interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); OkHttpClient client = new OkHttpClient.Builder().addInterceptor(interceptor).build(); Retrofit retrofit = new Retrofit.Builder() .baseUrl(API_URL) .client(client) .addConverterFactory(GsonConverterFactory.create()) .build();
此解決方案提供的logcat訊息類似於Retrofit 1.
注意中的setLogLevel(RestAdapter.LogLevel.FULL):如果遇到java.lang.ClassNotFoundException,請檢查評論部分以獲取涉及舊版本Retrofit和日誌記錄的潛在解決方案-攔截器。
以上是如何在 Retrofit 2 中記錄準確的 JSON 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!