AJAX 호출 결과의 브라우저 캐싱을 방지하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-19 16:50:03
원래의
348명이 탐색했습니다.

How to Prevent Browser Caching of AJAX Call Results?

AJAX 호출 결과의 브라우저 캐싱 방지

AJAX 호출 결과 캐싱은 동적 콘텐츠 작업 시 문제가 될 수 있습니다. 이를 극복하기 위해 우리는 브라우저의 캐싱을 방지하는 대체 방법을 모색합니다.

jQuery의 캐시 옵션 활용

jQuery는 향후 모든 AJAX 요청에 대해 캐싱을 비활성화하는 간단한 솔루션을 제공합니다. . $.ajaxSetup 함수를 사용하면 캐시 옵션을 false로 지정하여 후속 AJAX 호출이 캐시되지 않도록 할 수 있습니다.

$.ajaxSetup({ cache: false });
로그인 후 복사

Random QueryString Strings의 대안

QueryString에 고유한 문자열을 추가하면 캐싱을 방지할 수 있지만 가장 바람직한 접근 방식은 아닐 수 있습니다. 대신, jQuery의 타임스탬프 방법은 요청 URL에 추가할 고유한 타임스탬프를 생성하여 결과가 캐시되지 않도록 할 수 있습니다.

$.ajax({
    url: 'some.php',
    method: 'GET',
    data: { timestamp: $.now() }
});
로그인 후 복사

사용자 정의 헤더 만들기

또 다른 방법 옵션은 캐싱을 방지하기 위해 요청에 대한 사용자 정의 헤더를 설정하는 것입니다. 예를 들어, 다음 헤더를 사용하면 브라우저에 응답을 캐시하지 않도록 지시합니다.

cache-control: no-cache, no-store
pragma: no-cache
로그인 후 복사

HTTP 상태 코드

특정 HTTP 상태 코드를 사용하여 다음을 수행할 수도 있습니다. 리소스를 캐시하면 안 됨을 나타냅니다. Cache-Control 헤더를 max-age=0 또는 no-store로 설정하면 캐싱이 방지됩니다.

CORS(Cross-Origin Resource Sharing)

AJAX 요청이 도메인 전체에 걸쳐 만들어지면 CORS는 캐싱 동작을 방해할 수 있습니다. 교차 출처 요청에서 캐싱 문제가 발생하는 경우 위에서 언급한 Cache-Control 헤더를 사용하거나 서버에 대한 CORS 관련 설정을 살펴보세요.

위 내용은 AJAX 호출 결과의 브라우저 캐싱을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿