请求HTTP库很慢

时间:2018-01-19 09:27:56

标签: javascript node.js http express request

我正在使用Node.js(8.9.4)和Express(4.16.2)制作项目。基本上,使用Node.js我会咨询外部API,然后使用Express制作一条消耗此结果的路由。令我惊讶的是,当我使用Axios库时,它使我的响应延迟了大约30秒。我想检查一下这是我的问题还是来自API ...我已经用PostMan检查了它,它的返回时间不到300毫秒。然后我认为这是与Axios相关的任何问题,所以我决定使用请求承诺但是......再次30秒。我做的最后一个测试是使用Node.js原生' https' util和...是的,再次不到300ms。

有谁知道这些包的问题是什么?我是否被判使用回调而不是承诺?

这是我的基本代码......(AXIOS,请求承诺......响应延迟30秒)

const rp = require('request-promise);

const BASE_URL = 'my https url';
const AUTH_TOKEN = 'my auth token';

const options = {
    uri: BASE_URL + '/my-route',
    qs: { myQS: true },
    headers: { authorization: AUTH_TOKEN }
    method: 'GET'
};

rp(options)
    .then(response => response)
    .catch(error => error);

这是我的基本代码,使用HTTPS ....响应延迟300毫秒

const https = require('https');

const AUTH_TOKEN = 'my auth token';

const options = {
    hostname: 'my hostname',
    port: 443,
    path: 'my path',
    headers: { authorization: AUTH_TOKEN },
    method: 'GET'
};

https.get(options, (res) => {
    res.on('data', d => d);
};

1 个答案:

答案 0 :(得分:0)

只是一个猜测,但听起来像Axios正在通过您的网络中的不同路线。这两个请求是否都配置为使用相同的代理设置?