Ich habe ein Problem mit authentifizierten Benutzer bekommen. Vorher habe ich Token und User ID bekommen. Jetzt muss ich Benutzer vom Server mit Zugriffstoken und ID erhalten. I have header formatNachrüstung hinzufügen Header mit Token und ID
Jetzt versuche ich Header mit Benutzer-Token und ID mit Interceptor hinzufügen.
Mein Code:
Interceptor interceptor = new Interceptor() {
@Override
public okhttp3.Response intercept(Chain chain) throws IOException {
Request newRequest = chain.request().newBuilder()
.addHeader("Accept", "application/json")
.addHeader("authorization", token) <-??
.addHeader("driver_id", id) <-??
.build();
return chain.proceed(newRequest);
}
};
OkHttpClient.Builder okHttpBuilder = new OkHttpClient.Builder();
okHttpBuilder.addInterceptor(interceptor);
OkHttpClient okHttpClient = okHttpBuilder.build();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(okHttpClient)
.build();
Schnittstelle:
@GET("driver/v1/driver")
Call<Driver> getAuthorizedDriver();
Verschiedene Varianten wirft 401 Fehler, nicht wissen, was Log zu tun:
I/Response code: 401
I/Response message: Unauthorized`
Haben Sie versucht, @Headers ("Token:" + TOKEN) mit über die @ abrufen? –
Ich brauche immer einen neuen Token-Wert. Vielen Dank –
eine andere Möglichkeit wäre, das Token übergeben und die ID über die getAuthorizedDriver() – Malik