我需要使用axios库发出GET请求。这是非常基础的:有一个服务器暴露REST API,我需要从我的公司网络访问它。我有这样的代码:
var axios = require('axios');
axios.get('http://rest-api-address-ip/plain-api/items?username=admin', {
timeout: 30000,
proxy: {
host: 'my-proxy.net',
port: 82,
},
}).then(function(response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
当我尝试使用我的网络浏览器访问“http://rest-api-address-ip/plain-api/items?username=admin”时,它可以运行 - 我从REST API获得响应,但是当我运行我的JavaScript文件时它不起作用:
PS D:\workspace\axios-test> node .\index.js
{ [Error: timeout of 30000ms exceeded]
config:
{ adapter: [Function: httpAdapter],
transformRequest: { '0': [Function: transformRequest] },
transformResponse: { '0': [Function: transformResponse] },
timeout: 30000,
xsrfCookieName: 'XSRF-TOKEN',
xsrfHeaderName: 'X-XSRF-TOKEN',
maxContentLength: -1,
validateStatus: [Function: validateStatus],
headers:
{ Accept: 'application/json, text/plain, */*',
'Access-Control-Allow-Origin': '*',
'User-Agent': 'axios/0.15.3',
host: 'rest-api-address-ip' },
method: 'get',
proxy: { host: 'my-proxy.net', port: 82 },
url: 'http://rest-api-address-ip/plain-api/items?username=admin',
data: undefined },
code: 'ECONNABORTED',
response: undefined }
在我的浏览器中,我有完全相同的代理设置。我知道这个REST API允许CORS请求。可能是什么问题?