XML HTTPRequest 의 몇 가지 방법 과 속성
open()
: 서버 에 설 치 된 새로운 요청 입 니 다.send()
: 서버 에 요청 을 보 냅 니 다.abort()
: 현재 요청 을 종료 합 니 다.readyState
: 현재 HTML 의 준비 상 태 를 제공 합 니 다.responseText
: 서버 에서 돌아 온 요청 응답 텍스트 HTTP 준비 상태 (readyState 상태 코드)
앞에서 언급 한 바 와 같이 서버 는 요청 이 완료 되면
XMLHttpRequest
의 onreadystatechange
속성 에서 호출 할 방법 을 찾 습 니 다.이것 은 사실 이지 만 아직 완전 하지 않다.사실 HTTP 준비 상태 가 바 뀔 때마다 이 방법 을 사용한다.이것 은 무엇 을 의미 합 니까?우선 HTTP 준비 상 태 를 이해 해 야 합 니 다.HTTP 준비 상 태 는 요청 한 상태 나 상황 을 표시 합 니 다.이 요청 이 시작 되 었 는 지, 응답 을 받 았 는 지, 요청 / 응답 모델 이 완료 되 었 는 지 확인 하 는 데 사 용 됩 니 다.서버 가 제공 하 는 응답 텍스트 나 데 이 터 를 읽 는 것 이 안전 한 지 확인 하 는 데 도 도움 이 된다.Ajax 응용 프로그램 에서 다섯 가지 준비 상 태 를 알 아야 합 니 다.
open()
전에).send()
.대부분의 크로스 브 라 우 저 문제 와 마찬가지 로 준비 상태의 사용 도 일치 하지 않 습 니 다.당신 은 임무 의 준비 상태 가 0 에서 1, 2, 3 에서 4 까지 되 기 를 기대 할 수 있 지만, 실제로는 이런 경우 가 매우 적 습 니 다.일부 브 라 우 저 는 0 이나 1 을 보고 하지 않 고 2 부터 시작 한 다음 3 과 4 이다.다른 브 라 우 저 는 모든 상 태 를 보고 합 니 다.또 일 부 는 준비 상태 1 을 여러 차례 보고 했다.이전 절 에서 볼 수 있 듯 이 서버 가 여러 번 호출
updatePage()
되 었 습 니 다. 호출 할 때마다 경고 상자 가 팝 업 됩 니 다. 예상 과 다 를 수 있 습 니 다!준비 상태 와 Ajax 프로 그래 밍 기술 에서 배 운 서버 의 응답 이 있 으 면 Ajax 응용 프로그램 에 또 다른 복잡성 을 추가 할 수 있 습 니 다. 이것 은 HTTP 상태 코드 를 사용 해 야 합 니 다.이 코드 들 은 Ajax 에 게 신선 한 것 이 없다.웹 이 등장 한 이래 로 그것들 은 이미 존재 했다.웹 브 라 우 저 에서 몇 가지 상태 코드 를 보 았 을 수도 있 습 니 다.
function getSalesData() {
createRequest();
var url = "/boards/servlet/UpdateBoardSales";
request.open("HEAD"
, url, true);
request.onreadystatechange = updatePage;
request.send(null);
}
이러한 상황 에서 귀 하 는 적당 한 1 등 만 사용 하고 이 를
XMLHttpRequest
대상 에 게 전달 하 는 getResponseHeader()
방법 만 사용 하 였 습 니 다.따라서 응답 길 이 를 가 져 오 려 면 호출 request.getResponseHeader("Content-Length");
만 필요 합 니 다.콘 텐 츠 종 류 를 가 져 오 려 면 사용 하 십시오 request.getResponseHeader("Content-Type");
.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Linux Shell 프로 그래 밍 - 텍스트 처리 grep, sed사용자 가 지정 한 '모드' 에 따라 대상 텍스트 를 일치 하 게 검사 하고 일치 하 는 줄 을 인쇄 합 니 다. ##포함 되 지 않 음, 역방향 일치 \ ##키워드 앞 뒤 가 맞지 않 고 키워드 만 일치 합 니 다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.