Использовать кеш сервера на 15 минут - PullRequest
3 голосов
/ 29 марта 2011

Я хочу использовать серверный кеш на 15 минут, так что мне нужно использовать в setRequestProperty ()?

Пожалуйста, помогите мне ..

Вот мой код, который я использовал ..

private HttpURLConnection httpCon = null;
httpCon = (HttpURLConnection) httpUrl.openConnection();
httpCon.setRequestMethod("GET");
httpCon.setRequestProperty("Connection", "Keep-Alive");
httpCon.setRequestProperty("Pragma","public");
httpCon.setRequestProperty("Cache-Control","maxage=900");
httpCon.setUseCaches(true);

Ответы [ 2 ]

3 голосов
/ 11 апреля 2011

Вы говорите серверу, что хотите, чтобы он кешировал ответы, но нет никакой гарантии, что сервер сделает это или ему разрешено это делать (если только вы не управляете сервером и не реализуете это).

Вы также можете попытаться настроить промежуточный HTTP-кеш клиента и сервера, например, прокси-кеш, такой как Varnish, Pound или Squid.

Наконец, вы можете выполнять кеширование в браузере самостоятельно, что поддерживаетсяпакет Android java.net, но не имеет реализации по умолчанию.Для этого:

-Check HttpURLConnection какие данные (в разделе «Кэширование ответов») необходимо реализовать в ResponseCache и вызвать setDefault.

-Также проверить Пример ResponseCache , в котором есть примеры этого, и что-то странное, на что стоит обратить внимание в конце (что может быть, а может и не быть правдой).

Удачи!

2 голосов
/ 18 апреля 2011

Вместо использования HttpConnection используйте DefaultHttpClient и CachingHttpClient (часть Apache Http Client, по умолчанию связанная с Android).

Посмотрите на http://hc.apache.org/httpcomponents-client-ga/tutorial/html/caching.html, чтобы получить более подробную информацию о том, как использовать кэширование.

...