Retrofit 2.0 :
AGGIORNAMENTO: @ di Marcus Pöhls
Accesso all'aggiornamento 2
Retrofit 2 si basa completamente su OkHttp per qualsiasi operazione di rete. Poiché OkHttp è una dipendenza peer di Retrofit 2, non sarà necessario aggiungere una dipendenza aggiuntiva una volta che Retrofit 2 viene rilasciato come versione stabile.
OkHttp 2.6.0 viene fornito con un intercettore di registrazione come dipendenza interna e puoi usarlo direttamente per il tuo client Retrofit. Retrofit 2.0.0-beta2 utilizza ancora OkHttp 2.5.0. Le versioni future aumenteranno la dipendenza a versioni OkHttp superiori. Ecco perché è necessario importare manualmente l'intercettore di registrazione. Aggiungi la seguente riga alle tue importazioni gradle all'interno del tuo file build.gradle per recuperare la dipendenza dell'interceptor di registrazione.
compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'
Puoi anche visitare la pagina GitHub di Square su questo intercettore
Aggiungi registrazione al retrofit 2
Durante lo sviluppo della tua app e per scopi di debug è utile avere una funzionalità di registro integrata per mostrare le informazioni sulla richiesta e sulla risposta. Poiché la registrazione non è più integrata per impostazione predefinita in Retrofit 2, è necessario aggiungere un intercettore della registrazione per OkHttp. Fortunatamente OkHttp viene già fornito con questo intercettore e devi solo attivarlo per il tuo OkHttpClient.
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
// set your desired log level
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
// add your other interceptors …
// add logging as last interceptor
httpClient.addInterceptor(logging); // <-- this is the important line!
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
Ti consigliamo di aggiungere la registrazione come ultimo intercettore, perché questo registrerà anche le informazioni che hai aggiunto con gli intercettatori precedenti alla tua richiesta.
Livelli di registro
La registrazione di troppe informazioni farà saltare in aria il tuo monitor Android, ecco perché l'interceptor di registrazione di OkHttp ha quattro livelli di log: NONE, BASIC, HEADERS, BODY. Ti guideremo attraverso ciascuno dei livelli di registro e descriveremo il loro output.
ulteriori informazioni, visitare: Retrofit 2 - Richieste di registro e risposte
VECCHIA RISPOSTA:
nessun accesso a Retrofit 2 più. Il team di sviluppo ha rimosso la funzionalità di registrazione. Ad essere onesti, la funzione di registrazione non era comunque così affidabile. Jake Wharton ha dichiarato esplicitamente che i messaggi o gli oggetti registrati sono i valori presunti e non è stato possibile provare che siano veri. La richiesta effettiva che arriva al server potrebbe avere un corpo della richiesta modificato o qualcos'altro.
Anche se non esiste un logging integrato per impostazione predefinita, puoi sfruttare qualsiasi logger Java e utilizzarlo all'interno di un intercettore OkHttp personalizzato.
Per ulteriori informazioni su Retrofit 2, fare riferimento a:
Retrofit - Guida introduttiva e creazione di un client Android
FULL
dovrebbe dare il corpo ma non sembra.