Axios with node.js - ReferenceError: XMLHttpRequest is not defined

Axios with node.js - ReferenceError: XMLHttpRequest is not defined

我从一个简单配置的 axios 实例发出 GET 请求:

var Axios = axios.create({
        baseURL: myBaseUrl,
        headers: {'content-type': 'application/json'}
    });

Axios.get(url)

并出现以下错误:

ReferenceError: XMLHttpRequest is not defined
    at dispatchXhrRequest (C:\...\node_modules\axios\dist\axios.js:804:24)
    at xhrAdapter (C:\...\node_modules\axios\dist\axios.js:796:11)
    at process._tickCallback (internal/process/next_tick.js:103:7)
    at Function.Module.runMain (module.js:577:11)
    at startup (node.js:160:18)
    at node.js:456:3

根据我的理解(并根据 docs),axios 应该可以在网络浏览器和 node.js.

上运行

我错过了什么?

版本:

node - 6.2.1
axios - 0.13.1

您似乎需要一个浏览器端文件,这一行 node_modules\axios\dist\axios.js 证实了这一点。

应该是node_modules/axios/lib/axios.js

更新:

对于node.js使用

var axios = require('axios');

对于浏览器只需添加一个脚本标签,axios对象应该是全局可用的

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

或link您的本地axios.min.js文件例如

<script src="/node_modules/axios/dist/axios.min.js"></script>