2011-02-28 4 views
0

jQuery를 사용하여 웹 페이지에서 동적으로 이미지를로드합니다. 사용자가 페이지에서 제출을 누를 때마다 새 이미지가 생성됩니다. 문제는 이미지 URL 끝에 임의의 숫자를 추가하지 않으면 캐싱으로 인해 동일한 이미지가 반환된다는 것입니다.jQuery를 사용하여 이미지로드, 캐싱 중지 방법

내 코드

img.attr('src', url + resp.id + '.png?' + cache); 

나는 끝에서 캐시 문자열을 제거하고 여전히 신선한 이미지, 사람이 작업을 수행하는 방법을 알고 역할을 좀하고 싶습니다 ... 다음과 같습니다? 나는 HTTP 서버 측 (nginx 사용)에서 문제가된다고 생각하지 않는다. 직접 요청을하면 캐시 버스터 없이도 올바른 이미지가 표시되기 때문이다.

+0

~ 캐시 제어의 종류 등 문자열에 시간을 추가한다 수행하는 일상적인 일 – Shad

답변

3

이것은이 문제를 피할 수있는 가장 간단한 방법입니다. 설계 상으로는 문제가 있기 때문입니다.

var d = new Date(); 
var cache = d.getTime(); 

// getTime() Returns the number of milliseconds since midnight Jan 1, 1970 
당신은 당신의 서버가 이미지와 함께 전송 헤더를 확인해야합니다
관련 문제