program tip

XMLHttpRequest 모듈이 정의되지 않음 / 찾음

radiobox 2020. 12. 24. 23:33
반응형

XMLHttpRequest 모듈이 정의되지 않음 / 찾음


이것은 내 코드입니다.

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var xhr = new XMLHttpRequest();
xhr.open("GET", "//URL")
xhr.setRequestHeader("Content-Type: application/json", "Authorization: Basic //AuthKey");
xhr.send();

오류가 발생합니다.

Cannot find module 'xmlhttprequest'

첫 번째 줄을 제거하면 다음과 같은 결과가 나타납니다.

XMLHttpRequest is not defined

나는 모든 것을 검색했고 사람들은 여기저기서 Node.js의 문제를 언급했지만 Node의 설치가 정확했기 때문에 문제가 무엇인지 잘 모르겠습니다.


XMLHttpRequest는 웹 브라우저 의 기본 제공 개체입니다 .

Node와 함께 배포되지 않습니다. 당신은 할 필요가 별도로 설치 ,

  1. npm으로 설치하십시오.

    npm install xmlhttprequest
    
  2. 이제 require코드에서 할 수 있습니다 .

    var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
    var xhr = new XMLHttpRequest();
    

즉, http 모듈 은 Node.js에서 HTTP 요청을 만들기위한 내장 도구입니다.

Axios 는 요즘 매우 인기있는 Node와 브라우저에서 사용할 수있는 HTTP 요청을위한 라이브러리입니다.


xmlhttprequest 모듈 의 마지막 업데이트 가 약 2 년 전 이었기 때문에 어떤 경우에는 예상대로 작동하지 않습니다.

따라서 대신 xhr2 모듈을 사용할 수 있습니다 . 다시 말해:

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var xhr = new XMLHttpRequest();

된다 :

var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();

하지만 ... 물론 Axios 와 같은 더 인기있는 모듈이 있습니다 .-예를 들어-약속을 사용하기 때문입니다.

// Make a request for a user with a given ID
axios.get('/user?ID=12345').then(function (response) {
    console.log(response);
}).catch(function (error) {
    console.log(error);
});

참조 URL : https://stackoverflow.com/questions/32604460/xmlhttprequest-module-not-defined-found

반응형