Gewusst wie: abrufen von cookie aus der Antwort Nachrüstung, okhttp?

Ich versuche, um Cookies abzurufen Werten aus der API-Antwort für die Pflege der backend-session durch die Einstellung der cookie-Wert auf neue API-Aufruf im Fall, dass die APP geschlossen ist :

Die Reaktion auf die API-Aufruf aus Postbote RestClient:
Gewusst wie: abrufen von cookie aus der Antwort Nachrüstung, okhttp?

RetrofitClient.java

public static Retrofit getClient() {

    if (checkClient()) {
        return getRetrofit();
    }

    HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
    interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
    CookieHandler cookieHandler = new CookieManager();

    okhttp3.OkHttpClient client = new okhttp3.OkHttpClient.Builder().addNetworkInterceptor(interceptor)
            .cookieJar(new JavaNetCookieJar(cookieHandler))
            .connectTimeout(10, TimeUnit.SECONDS)
            .writeTimeout(10, TimeUnit.SECONDS)
            .readTimeout(30, TimeUnit.SECONDS)
            .build();

    Gson gson = new GsonBuilder()
            .setLenient()
            .create();

    retrofit = new Retrofit.Builder()
            .baseUrl(BASE_URL)
            .addConverterFactory(GsonConverterFactory.create(gson))
            .client(client)
            .build();
    return retrofit;
}

API-Aufruf

private void userLogin(String username, String password) {
    Retrofit retrofit = RetrofitClient.getClient();

    final LoginServices loginServices = retrofit.create(LoginServices.class);
    Call<LoginResponse> call = loginServices.userLogin(username, password);

    call.enqueue(new Callback<LoginResponse>() {
        @Override
        public void onResponse(Call<LoginResponse> call, Response<LoginResponse> response) {
            Log.d("Response code:", "===========" + response.code());

            Log.d("==Cookie==1===", "==="+response.raw().request().headers().get("Cookie"));
            Log.d("==Cookie==2==", "==="+response.headers().get("Cookie"));
            Log.d("==Content-Type====", "==="+response.headers().get("Content-Type"));

        }

        @Override
        public void onFailure(Call<LoginResponse> call, Throwable t) {
            Log.e("TAG", "=======onFailure: " + t.toString());
            t.printStackTrace();
            //Log error here since request failed
        }
    });
}

Logcat:

Response code:: ===========200
==Cookie==1===: ===null
==Cookie==1===: ===null
==Content-Type====: ===application/json

Ich habe auch versucht, verschiedene andere Methoden, Sie hat nicht für mich gearbeitet. Bitte Um Hilfe!!

Antwort.raw - ().Header().get("Cookie") versuchen, diese
schon versucht, funktioniert nicht @ManthanPatel
finden Sie auf dieser gist.
funktioniert nicht 🙁

InformationsquelleAutor Anurag Dhunna | 2018-01-04

Schreibe einen Kommentar