2013-06-04 2 views
1

Я не могу найти какой-либо ресурс, чтобы понять, как файлы cookie устанавливаются ответом Http в Android. Я ударять URL и читаю ответ, как так:Android: Http-ответ куки-магазина

  HttpGet httpGet = new HttpGet(url); 
     HttpResponse response = client.execute(httpGet); 
     StatusLine statusLine = response.getStatusLine(); 
     int statusCode = statusLine.getStatusCode(); 
     if (statusCode == 200) { 
      HttpEntity entity = response.getEntity(); 
      String entityStr = EntityUtils.toString(entity); 
       } 

Я сказал, что Http ответ будет устанавливать кук, которые будут читать другую службу позже. Есть ли что-то, что мне нужно сделать, чтобы установить cookie? Как я могу проверить, установлен ли файл cookie. Спасибо.

ответ

8

Если вы используете клиент, который расширяет AbstractHttpClient, например DefaultHttpClient, вы можете сделать следующее, чтобы получить файлы cookie после выполнения запроса.

List<Cookie> cookiejar = client.getCookieStore().getCookies(); 
+0

Я понимаю это часть. Мой вопрос заключается в том, что ОС Android обрабатывает файлы cookie, которые входят в заголовок ответа, и помещает их в универсальный кувшин cookie, поэтому он может быть получен позже с помощью совершенно другой службы, использующей поиск имени домена. Моя проблема заключается в том, что моя связь с Http-сервером полностью независима от бэкэнд-сервиса, который требует, чтобы файл cookie позднее передавал данные обратно на сервер. – user1935235

+0

Нет, они не находятся в универсальной банке для печенья. Я бы порекомендовал вам взять список файлов cookie, возвращенных из запроса сервера, и добавить их к последующим запросам вручную. – jimmithy

Смежные вопросы