반응형
Internet Explorer에서 jQuery Ajax 요청이 캐싱되는 것을 방지하는 방법은 무엇입니까?
Internet Explorer에서 jQuery Ajax 요청이 캐시되지 않도록하려면 어떻게해야합니까?
$.ajaxSetup()
예를 들어을 사용하여 전역 적으로 캐싱을 비활성화 할 수 있습니다 .
$.ajaxSetup({ cache: false });
요청시 쿼리 문자열에 타임 스탬프가 추가됩니다. 특정 $.ajax()
통화에 대해 캐시를 끄려면 다음 cache: false
과 같이 로컬로 설정 하십시오.
$.ajax({
cache: false,
//other options...
});
고유 한 매개 변수를 설정하면 캐시가 작동하지 않습니다 (예 :
$.ajax({
url : "my_url",
data : {
'uniq_param' : (new Date()).getTime(),
//other data
}});
Cache-Control: no-cache, no-store
이 두 헤더 값을 결합하면 IE와 Firefox 모두에 필요한 효과를 얻을 수 있습니다.
답변 제안은 다음과 같습니다.
http://www.greenvilleweb.us/how-to-web-design/problem-with-ie-9-caching-ajax-get-request/
아이디어는 예를 들어 현재 날짜를 포함하는 ajax 쿼리에 매개 변수를 추가하여 브라우저가 캐시 할 수 없도록하는 것입니다.
링크를 살펴보면 잘 설명되어 있습니다.
다음과 같이 정의 할 수 있습니다.
let table = $('.datatable-sales').DataTable({
processing: true,
responsive: true,
serverSide: true,
ajax: {
url: "<?php echo site_url("your url"); ?>",
cache: false,
type: "POST",
data: {
<?php echo your api; ?>,
}
}
또는 이와 같이 :
$.get({url: <?php echo json_encode(site_url('your api'))?>, cache: false})
그것이 도움이되기를 바랍니다
이것은 오래된 게시물이지만 IE가 문제를 일으키는 경우입니다. GET 요청을 POST로 변경하면 IE는 더 이상 캐시하지 않습니다.
나는 이것을 어려운 방법으로 알아내는 데 너무 많은 시간을 보냈다. 도움이 되길 바랍니다.
반응형
'IT' 카테고리의 다른 글
Git과 GitHub의 차이점 (0) | 2020.03.28 |
---|---|
앱이 백그라운드에서 돌아올 때 viewWillAppear가 호출되지 않는 이유는 무엇입니까? (0) | 2020.03.28 |
안드로이드에서 사용되는 SQLite 버전? (0) | 2020.03.28 |
모든 테이블에 대한 현재 AUTO_INCREMENT 값을 가져옵니다. (0) | 2020.03.28 |
Git 리모컨에서 가져올 때 원격 변경 사항을 사용하여 충돌 해결 (0) | 2020.03.28 |