얼마전 회사에서 WEB-APP으로 만든 프로그램이 IOS6에서 문제가 발생한다고 연락이 왔습니다.
그래서 테스트를 해보았더니..
동일한 AJAX를 두번 날리면, 먼저 날린 거래를 cache리하는 문제가 발생하는 것입니다.
....귀찮은 문제네요.ㄱ-;
하지만 어쩔수 없이 해결하기 위해 여러가지 테스트를 해보았습니다.
그중에 가장 확실한 방법은 header값을 담아서 날리면 되는것 같더군요.^^
다행히 AJAX util을 추상화 해놓아서.
공통 js파일 하나만 수정해서 해결이 되었습니다.
jQuery를 사용하신다면 아래 Header부분을 추가해주시면 정상적으로 거래가 이루어집니다.
물론 cache옵션은 false로 주는게 좋겠죠?.^^
jQuery.ajax( { type : "POST",
url : "url....",
data : {/*요청값*/},
cache : false,
async : false,
headers: { "cache-control": "no-cache","pragma": "no-cache" },
error : function(xhr, textStatus, errorThrown) {
// 에러시 처리
},
success : function(msg) {
// 처리 로직..
}
);
아마 Safari ( 사파리 )에서도 동일한 증상이 있을것으로 예상됩니다.^^
'컴퓨터 이야기' 카테고리의 다른 글
전산마비 (방송국 및 몇몇 금융권) 어떤 방법으로 마비 시켰을까? (1) | 2013.03.20 |
---|---|
Servlet레퍼런스나 정리해볼까 합니다. (0) | 2013.02.27 |
Safari.. Ajax버그 에 대한 대처 - Form-Submit방식으로 구현한 Ajax (3) | 2012.07.02 |
CHROME FRAME에 대한 분석 (0) | 2012.06.15 |
IE6/IE7/IE8 등의 호환을 유지한채 HTML5 사용. (4) | 2012.06.15 |