Please Enable Retrofit on your project, follow this step and OkHttp on your project, follow this step.
- Add dependencies
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.10.0'- Make Class
TokenInterceptor
publicclassTokenInterceptor {
publicTokenInterceptor() {
}
publicOkHttpClientgetClient(){
HttpLoggingInterceptorinterceptor = newHttpLoggingInterceptor();
interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
returnnewOkHttpClient
.Builder()
.addInterceptor(interceptor)
.addInterceptor(newInterceptor() {
@OverridepublicResponseintercept(Chainchain) throwsIOException {
Requestrequest = chain.request().newBuilder()
.addHeader("Accept", "application/json")
.addHeader("Authorization", "Bearer Token")
.build();
returnchain.proceed(request);
}
})
.readTimeout(90, TimeUnit.SECONDS)
.writeTimeout(90, TimeUnit.SECONDS)
.connectTimeout(90, TimeUnit.SECONDS)
.retryOnConnectionFailure(false)
.cache(null)
.build();
}
}- Add configuration to RetrofServer
publicclassRetroServer {
privatestaticfinalStringbase_url = "http://192.168.0.121/retrofit/";
privatestaticRetrofitsetInit(){
OkHttpClientclient = newTokenInterceptor().getClient();
returnnewRetrofit.Builder()
.baseUrl(base_url)
.addConverterFactory(GsonConverterFactory.create())
.client(client)
.build();
}
publicstaticApiServicegetInstance(){
returnsetInit().create(ApiService.class);
}
}
publicinterfaceApiService {
}Copyright 2020 M. Fadli Zein