如何在npm的请求包中使用代理

时间:2018-02-25 12:12:59

标签: javascript node.js

在下面的代码中,我试图将request与代理一起使用。要检查我是否使用https://v4.ident.me/进行验证。

documentation没有提供示例,所以我尝试了下面的代码但它打印的是我的实际IP,而不是代理的:

const REQUEST = require('request'); // https://www.npmjs.com/package/request
var r_options = {
    host: '<proxy ip address>', // http://www.freeproxylists.net/
    port: 8080,
    timeout: 30000, // 30s
    headers: {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0'
    },
    url: 'https://v4.ident.me/'

};

REQUEST(r_options, function (error, response, body) {
    console.log(body);
});

那么,如何在npm的请求包中使用代理?

1 个答案:

答案 0 :(得分:3)

该文档未提供有关代理的任何示例。

以下是如何操作:

const REQUEST = require('request'); // https://www.npmjs.com/package/request

var options = {
 url: 'http://www.somewhere.com',
 proxy: 'http://<myproxy>:<portNumber>'
}

REQUEST(options, function (error, response, body) {

   // your code here

});

请注意,要访问https个网站,您需要一个支持https的代理。