Ajax 통신 시 IE에서 웹 캐싱 문제(작성중)

Updated:

개요

오랜만에 블로그에 글을 쓴다.

회사에서 인터넷 강의 사이트를 유지보수하는 업무를 맡고 있던 도중, 사용자로 부터 데이터가 변경이 되지 않는다는 문의를 받았고 확인해본 결과.

사용자는 IE(Internet Explorer)를 사용하고 있었다. 혼자 유지보수를 하다보니 크로스 브라우징 같은 테스트에 대해 소홀했기 때문에 이런 문제가 발생하는지도 몰랐다.

그래서 코드를 확인해보니 ajax 통신을 하는데 크롬브라우저에선 잘 동작하지만, IE에서만 되지 않아서 확인해보았고 문제는 웹 캐싱(Web cache) 문제였다. 이를 해결하기 위해 ajax 전송 시 캐시를 남기지 않는다는 옵션을 추가해서 보내니까 문제가 해결됐다.

Ajax(Asynchronous JavaScript And XML)

Ajax는 비동기적인(Asynchronous) 통신을 위해 만들어졌다고 한다. 기존 웹 서버로 데이터를 가져올 때, 유사한 페이지를 받을 때 불필요한 데이터 전송이 일어나기 때문에 필요한 데이터만가져올 수 있도록 한 통신이다.

자세한 내용은 다음에 정리할 수 있도록 하자.

IE 비동기 통신 특성

IE에선 Ajax 통신 시, 웹캐시를 자동 저장하게 되어 첫 번째, 서버와 통신 후, 캐시가 되어 서버와 통신을 하지 않게 되어 값이 변하지 않게 되었다.

이를 해결하기 위해 웹 캐시를 저장하지 않는 옵션을 넣어주었다.(작성중)

Tags:

Categories:

Updated:

Comments