一尘不染

未定义/找到XMLHttpRequest模块

node.js

这是我的代码:

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是正确的,所以我不确定是什么问题。


阅读 683

收藏
2020-07-07

共1个答案

一尘不染

XMLHttpRequest是 Web浏览器中 的内置对象。

它不随Node一起分发;您必须单独安装它

  1. 用npm安装

    npm install xmlhttprequest
    
  2. 现在,您可以require在代码中使用它。

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

    var xhr = new XMLHttpRequest();

也就是说,http模块是用于从Node发出HTTP请求的内置工具。

Axios是一个用于发出HTTP请求的库,该库可用于Node和当前流行的浏览器。

2020-07-07