модификация 2.0.1 добавить заголовок cookie не работает

В сети уже есть несколько фрагментов кода, которые показывают, как это должно работать. Например, этот.

Мой код не работает; и я также ищу версию для динамической отправки заголовка Cookie (я имею в виду только по конкретным запросам - для входа в систему это не требуется).

Итак, мой код:

HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
httpClient.addInterceptor(logging);
// header
// httpClient.addInterceptor(chain -> cookie != null ? chain.proceed(chain.request().newBuilder().addHeader("Set-Cookie", cookie).build()) : chain.proceed(chain.request()));
httpClient.addInterceptor(chain -> chain.proceed(chain.request().newBuilder().addheader("Cookie", cookie).build()));

Retrofit retrofit = new Retrofit.Builder().baseUrl(url)
         .addConverterFactory(GsonConverterFactory.create())
         .client(httpClient.build())
         .build();

Я не получаю этот заголовок в своем журнале!

--> POST [link] http/1.1
Content-Type: application/json; charset=UTF-8
Content-Length: 125

{// response object

Мои запросы сами по себе являются модифицированными; просто интерфейс с параметрами... ничего особенного, где я мог бы изменить что-то, чего не должен, чтобы исправить эту ошибку.

У кого-нибудь есть идея? И как сделать его динамичным? Со строкой комментариев?

Я читал, что модификация поддерживает аннотацию @Header также в качестве параметра. Поддержка отменена?


person rala    schedule 07.04.2016    source источник
comment
Можете ли вы подтвердить, что значение вашего файла cookie не является нулевым/пустым?   -  person Alex Townsend    schedule 07.04.2016
comment
да; если да, то является ли это причиной отсутствия заголовка? | по первому запросу пусто, а по второму (ожидающему первого) нет   -  person rala    schedule 07.04.2016
comment
Если он пуст, я считаю, что он все равно должен отображаться на выходе перехватчика ведения журнала. Null вызовет исключение. Вы ожидаете, что он будет установлен с первым запросом?   -  person Alex Townsend    schedule 07.04.2016
comment
Вы также должны иметь возможность устанавливать заголовки в объявлении интерфейса, например: Call<String> callOperation(@Header("Cookie") String cookie...)   -  person Alex Townsend    schedule 07.04.2016
comment
на самом деле нет (только для проверки - сравните две строки после // header)   -  person rala    schedule 07.04.2016
comment
спасибо за информацию, но тоже не помогло   -  person rala    schedule 07.04.2016


Ответы (1)


при модернизации 2.1.+ аннотация @Header работает нормально

person rala    schedule 17.05.2017