Notice
Recent Posts
Recent Comments
Link
투케이2K
26. (ajax/에이젝스) ajax http request 요청 시 cache 캐시 초기화 방법 본문
[개발 환경 설정]
개발 툴 : Edit++
개발 언어 : ajax
[소스 코드]
<!-- [라이브러리 CDN 등록 실시] -->
<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<!-- [내부 자바스크립트 J쿼리 이벤트 지정] -->
<script>
/**
* --------------------------------
* [요약 설명]
* --------------------------------
* 1. window.onload : 브라우저 로드 완료 상태를 나타냅니다
* --------------------------------
* 2. $.ajax() : 비동기식 Ajax를 이용하여 HTTP 요청을 전송합니다 (가장 흔히 사용)
* --------------------------------
* 3. ajax http request 요청 시 캐시 초기화 방법
*
* - request 요청 시 파라미터에 랜덤 값을 삽입해서 요청 실시 (타임 스탬프 사용)
*
* - ajax 옵션에서 cache 값 false 설정
* --------------------------------
*/
// [html 최초 로드 및 이벤트 상시 대기 실시]
$(window).load(function(){
console.log("");
console.log("=========================================");
console.log("[window load] : [html 로드 수행 실시]");
console.log("=========================================");
console.log("");
// [테스트 함수 호출]
testMain();
});
// [테스트 자바스크립트 함수]
function testMain(){
console.log("");
console.log("=========================================");
console.log("[testMain] : [start]");
console.log("=========================================");
console.log("");
// -----------------------------------------
// [1]. [초기 주소 설정 실시]
var urlData = "http://jsonplaceholder.typicode.com/posts?";
// -----------------------------------------
// [2]. [전송 파라미터 삽입 실시 : ?date=타임스탬프]
var reqParam = new Object();
reqParam["userId"] = 1;
reqParam["id"] = 1;
let timeStamp = Date.now(); // [현재 날짜 및 시간 밀리세컨드 타임 스탬프 값 파라미터 추가]
reqParam["realDateTimeStamp"] = String(timeStamp);
// -----------------------------------------
// [3]. [요청 url + 쿼리파람 데이터 결합 실시]
urlData += $.param (
reqParam
);
console.log("");
console.log("=========================================");
console.log("[testMain] : [request] : [http 요청 정보 확인]");
console.log("-----------------------------------------");
console.log("[urlData] : " + urlData);
console.log("=========================================");
console.log("");
// -----------------------------------------
// [4]. [ajax 요청 실시 : post query string]
$.ajax({
// [요청 시작 부분]
url: urlData, // 주소
type: "POST", // 전송 타입
async: true, // 비동기 여부
timeout: 5000, // 타임 아웃 설정
dataType: "TEXT", // 응답받을 데이터 타입 (XML,JSON,TEXT,HTML)
cache : false, // 캐시 사용 여부
contentType: "application/x-www-form-urlencoded; charset=utf-8", // 헤더의 Content-Type을 설정
// [응답 확인 부분]
success: function(response) {
console.log("");
console.log("=========================================");
console.log("[testMain] : [response] : [http 응답 결과 확인]");
console.log("-----------------------------------------");
console.log("[response] : " + response);
console.log("=========================================");
console.log("");
},
// [에러 확인 부분]
error: function(xhr) {
console.log("");
console.log("=========================================");
console.log("[testMain] : [error] : [http 에러 결과 확인]");
console.log("-----------------------------------------");
console.log("[error] : " + xhr);
console.log("=========================================");
console.log("");
},
// [완료 확인 부분]
complete:function(data, textStatus) {
console.log("");
console.log("=========================================");
console.log("[testMain] : [complete] : [http 완료 상태 확인]");
console.log("-----------------------------------------");
console.log("[status] : " + textStatus);
console.log("=========================================");
console.log("");
}
});
// -----------------------------------------
};
</script>
[결과 출력]
반응형
'Http & Api' 카테고리의 다른 글
28. (Http/XMLHttpRequest) XMLHttpRequest 사용해 get 방식 요청 수행 실시 (0) | 2022.11.22 |
---|---|
27. (ajax/에이젝스) ajax 문법 참고 사이트 (0) | 2022.10.11 |
25. (ajax/에이젝스) ajax get() 메소드 사용해 http get 방식 통신 요청 수행 실시 (0) | 2022.08.19 |
24. (ajax/에이젝스) ajax load 사용해 간편 get 방식 http 요청 수행 실시 및 response 응답 데이터 확인 (0) | 2022.08.19 |
23. (axios/액시오스) axios http 요청 및 response header 헤더 데이터 확인 실시 (0) | 2022.08.19 |
Comments