programing

readyState vs status==200

codeshow 2023. 3. 13. 20:44
반응형

readyState vs status==200

xmlhttp.onreadystatechange = function()
{
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
        document.getElementById("myDiv").innerHTML = xmlhttp.responseText;
    }
}

위의 코드는 http://www.w3schools.com/ajax/ajax_xmlhttprequest_onreadystatechange.asp 에서 취득한 것입니다.

질문:.

이 튜토리얼에 따르면:

readyState: 4: request finished and response is ready 

status: 200: "OK" 

When readyState is 4 and status is 200, the response is ready:

언제부터xmlhttp.readyState == 4, 응답은 준비되었습니다.왜 아직도 필요한가요?xmlhttp.status == 200?의 차이는 무엇입니까?xmlhttp.readyState == 4그리고.xmlhttp.status == 200?

응답 상태,xhr.status요구의 성공 여부를 판별하기 위해 사용됩니다. xhr.readyState는, 「아직 송신되지 않았다」(0), 「완료 및 응답 수신」(4) 등, 요구의 상태를 판단하기 위해서 사용합니다.

서버는, 다음의 정보를 제공할 책임이 있습니다.status사용자 에이전트가 제공하는 동안readyState.

status는 서버 응답이 정상인지 여부를 나타냅니다.
일반적으로, 당신이 지위를 얻었을 때

500-599: 서버에 오류가 발생했습니다.

400 - 499 :클라이언트 오류입니다(예: 404 페이지를 찾을 수 없습니다).

300 - 399: 그러면 리다이렉트가 존재합니다.

200 - 299 :그렇다면 정확하고

100 ~ 199 : 정보 메시지

그런 다음 status==200이라는 메시지가 뜨면 서버가 '저기, 제가 할게요!'라는 메시지를 표시합니다.

내 비유: 환자를 태운 구급차가 병원으로 가고 있다.이 시나리오에서는 패밀리(클라이언트)와 병원(서버)이 2가지 사항을 파악해야 합니다.

  • 구급차가 성공적으로 병원에 도착했다.(readyState)
  • 이 과정 중 환자의 상태 업데이트.(status)

한다면readyState === 4그리고.status === 200, 모든 것이 괜찮다는 것을 의미합니다.같은 방법으로 Ajax 콜이 동작합니다.

readyState XMLHttpRequest 상태를 유지합니다.0에서 4로의 변경:

0: 요청이 초기화되지 않았습니다.

1: 서버 접속 확립

2: 요청 수신

3: 요청 처리

4: 요청 완료 및 응답 준비 상태 200: "OK" 404: 페이지를 찾을 수 없습니다.

서버측 코드에 에러가 있는 것을 확인해 주세요.페이지를 요청하면 서버가 응답 스트리밍을 종료하면 readyState는 4가 되지만 상태 코드는 500(또는 500)이 됩니다.

readyState XMLHttpRequest 상태를 유지합니다.

0: 요청이 초기화되지 않았습니다.

1: 서버 접속 확립

2: 요청 수신

3: 요청 처리

4: 요청이 완료되었으며 응답 준비가 완료됨

status 요청 상태 번호를 반환합니다.

200: "OK"

403: "금지"

404: "찾을 수 없음"

응답 메시지에 대한 자세한 내용은 다음 사이트를 참조하십시오.

https://www.w3schools.com/tags/ref_httpmessages.asp

readyState는요구의응답입니다.응답의 취득을 완료하고 확인할 것이 있을 때 4가 됩니다.수 없기 하셔야 .status반환되었습니다.

onreadystatechange=function()은 서버로부터 응답을 받았을 때만 실행됩니다.서버로부터 응답을 받으면 4로 표시된 요청이 완료되었음을 의미합니다.그리고 200은 그 상태가 맞다는 것을 알려준다."4: request completed and response is ready status 200" 페이지를 찾을 수 없는 경우 상태 404가 표시됩니다.

일러스트:본인(클라이언트)이 여자친구(서버)에게 소포를 보내지만, 여자친구(서버)의 서명이 필요합니다(200 - 서명 또는 404 - 미서명).소포의 상태를 확인하실 수 있습니다(0 - 우체국, 4 - 발송).패키지가 시설에서 나오면 배송이 종료됩니다(4).그러나 택배가 도착했을 때 여자친구가 집에 없으면 서명하지 않은 상태로 우체국으로 돌아갑니다(404).

이것에 의해, 패키지(4)에 관한 스테이터스와 배송이 성공했는지를 수신할 수 있다(404).AJAX를 사용하면 서버에 요청을 할 수 있습니다.요청된 정보(서버 상태(데이터/문서 발견 여부 포함)를 얻으면 내용을 표시하기 전에 분석을 위해 수신자(클라이언트)로 반송됩니다.

언급URL : https://stackoverflow.com/questions/17561463/readystate-vs-status-200

반응형