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 중국어 웹사이트의 기타 관련 기사를 참조하세요!