var xhttp = new XMLHttpRequest(); 에서 로컬파일 불러오기
관련링크
본문
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.this == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "note_error.xml", true);
xhttp.send();
위 예제 에서 note_error.xml 파일을 GET 으로 받아오는데,
같은 폴더에 있는 xml 파일도 굳이 xhttp 함수 써서 가져와야 하는 겁니까?
이해가 안가네요?
왜 저렇게 하죠?
include 같은 함수가 안 먹히는 건가요?
!-->답변 3
저건 아작스를 제이쿼리가 아니라 바닐라 스크립트로 불러오는 코드입니다.
저처럼 제이쿼리를 사용하지 않는 사람은 하나의 형식이라 생각하고 사용하고 있어서 늘 저런 패턴으로 쓰고 있어요.
단순한 문서 로딩이 목적이라면 동기식으로 불러도 괜찮습니다.
저 같으면 차라리 xml 을 php 의 curl 로 긁어서 원하는 정보만 php 에서 파싱하는 것이 더 낫지 않나 싶네요.
저 방법은 note_error.xml 파일을 자바스크립트를 통해 동적으로 가져오기 위함입니다.
A페이지가 열린후에 note_error.xml 파일을 페이지 이동 없이 현재 페이지 안에서 불러올때 사용합니다.
A페이지가 열릴때 note_error.xml도 동시에 열려있어야한다면 include같은 함수를 이용해 파일을 불러온후에 한번에 뿌려줄수도 있겠죠
XMLHttpRequest 는 ajax 통신할 때 사용 하는 객체 입니다. new XMLHttpRequest() 이렇게 객체를 선언하고 사용 하는 것입니다.
요즘은 Jquery ajax를 많이 쓰고 있는데 다른 방법이라고 보시면 됩니다.
1.XMLHttpRequest 객체를 생성한다.
2.서버와 통신할 때 사용할 처리 방법을 등록한다. 3.요청을 전송하고 통신을 시작한다.
이러한 절차로 작동되어 집니다.