XHTML 요청을 REST API에 보내려고하지만 응답을 얻을 수 없습니다. 내가 execut 때,XHR 상태가 정의되지 않았습니다.
<script>
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://www.mocky.io/v2/5a083d8e2f0000c61ee61140", true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.onreadystatechange = function() {
console.log("xhr.readyState: " + xhr.readyState);
if (xhr.readyState === XMLHttpRequest.DONE) {
console.log("xhr.status: " + xhr.status);
if (xhr.status === 200) {
console.log("xhr.responseText: " + xhr.responseText);
var response = JSON.parse(xhr.responseText);
}
}
}
xhr.send();
console.log("xhr.readyState: " + xhr.readyState);
console.log("xhr.status: " + xhr.status);
</script>
xhr.status
은 정의되지 않은 남아가 if (xhr.status === 200)
에 입력하지 :
여기 내 코드입니다. 나는 이유를 모른다. 누군가 나를 도울 수 있습니까?
편집 :
오류에 대한 Access-Control-Allow-Origin
입니다 : 내가 JSON을 고정하지만 난 여전히 오류가
그래서
Failed to load http://www.mocky.io/v2/5a083d8e2f0000c61ee61140 : Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 403.
을, 나는 this topic 읽기 그게 내가 HTTP 헤더에 Access-Control-Allow-Origin : *
을 추가해야한다고 n mocky.io. 나는 그것을 할 수 있지만, 아무것도 변하지 않는다 : 여기
을 새로운 mocky.io URL입니다 : 내 실수이고
이http://www.mocky.io/v2/5a083d8e2f0000c61ee61140
사람이 볼 수 있습니까?
그럼 readyState는 무엇입니까? 당신은 그것이 4가 될 때까지 상태를 얻지 않는다 – epascarello
나는 나의 크롬 콘솔에서 그 js 코드를 실행했고'if (xhr.status === 200) ' – JohanP
을 입력한다. https://jsfiddle.net/79Lcvv1k/ 일부 출력을 추가 한 코드가 있습니다. 그래서 ... 문제는 서버 측 코드와 관련이 있습니다. 이후 –