2011-03-29 3 views
3

15 분 동안 서버 캐시를 사용하여 setRequestProperty()에서 사용해야하는 것은 무엇입니까?15 분 동안 서버 캐시 사용

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); 

답변

3

당신은 당신이 캐시 응답에 대한 기꺼이 서버를 말하고있다 .. 여기

내가 사용하는 내 코드입니다 .. 도와주세요,하지만 서버가 해당 보장이 없다하세요 (서버를 제어하고 구현하지 않는 한) 그렇게 할 수도 있고 가능하게 할 수도 있습니다.

광택 캐시, 파운드 또는 오징어와 같은 프록시 캐시와 같은 중간 HTTP 캐시를 클라이언트와 서버에 설정할 수도 있습니다.

마지막으로 Android java.net 패키지가 지원되지만 기본 구현이없는 브라우저 캐싱을 직접 수행 할 수 있습니다. 이렇게하려면 다음을 수행하십시오.

- ResponseCache를 구현하고 setDefault를 호출해야하는 세부 정보 ("응답 캐싱"절 참조)를 확인하십시오.

- 또한이 예가있는 ResponseCache Example을 확인하고 끝 부분에주의를 기울여야합니다 (여전히 사실 일 수도 있고 그렇지 않을 수도 있음).

행운을 빈다.

+2

ResponseCache 경로를 사용하는 경우 http://code.google.com/p/android/issues/detail?id=14537 버그에주의해야합니다. 2.3까지 Android가 finalize()를 호출하지 않거나 닫기() OutputStream에 –

+0

나는 클라이언트와 서버에 대한 중간 HTTP 캐시를 설정해야 할 것 같아요. –

관련 문제