Comment utiliser l'intercepteur ajouter des en-Têtes dans la Rénovation 2.0?
Notre équipe décide d'adopter Rénovation 2.0 et je suis en train de faire une recherche initiale sur elle. Je suis un débutant de cette bibliothèque.
Je me demandais comment utiliser interceptor
pour ajouter des en-têtes personnalisés via Rénovations 2.0 dans notre application Android. Il y a beaucoup de tutoriels sur l'utilisation de interceptor
ajouter des en-têtes dans la Rénovation 1.X, mais depuis les Api ont beaucoup changé dans la dernière version, je ne suis pas sûr de savoir comment adapter ces méthodes dans la nouvelle version. Aussi, Rénovation n'a pas de mise à jour de ses nouveaux documents encore.
Par exemple, les codes suivants, comment dois-je mettre en œuvre les Interceptor
classe pour ajouter des en-têtes supplémentaires? D'ailleurs, quelle est exactement la sans-papiers Chaine
de l'objet? Quand le intercept()
être appelé?
OkHttpClient client = new OkHttpClient();
client.interceptors().add(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Response response = chain.proceed(chain.request());
//How to add extra headers?
return response;
}
});
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_API_URL)
.client(client)
.addConverterFactory(GsonConverterFactory.create())
.build();
- Assurez-vous que votre BASE_API_URL se termine avec
/
et que votre url de l'API n'est pas (stuff/post/whatever
)
Vous devez vous connecter pour publier un commentaire.
Vérifier cela.
Kotlin
intercept()
est déclenché à chaque fois qu'une demande est envoyée à partir de l'application? Peut-on attraper l'intermédiaire de la réponse de redirection, ou nous venons d'obtenir la réponse finale?client.interceptors()
. Cela ressemble ànew OkHttpClient.Builder().addInterceptor(<Your Interceptor>).build()
Une autre alternative de la accepté de répondre à
request.newBuilder().headers(moreHeaders).build()
volonté de conserver l'original des en-têtes?Vous pouvez les en-têtes à l'aide d'Intercepteurs avec ses méthodes intégrées comme ce