Nodejs - 使用自定义网络接口获取远程文件内容

时间:2016-01-29 13:13:23

标签: node.js interface ip

我有一台配有整个ip块的机器。 我想调用远程URL来获取其内容。 我希望能够选择呼叫来自哪个接口/ IP地址。

对于前。 我有ip addreses 8.8.8.8和8.8.8.9 和远程文件是“http://www.google.com/robots.txt” 另一个远程文件是“http://www.yahoo.com/robots.txt

我希望通过我的IP 8.8.8.8调用第一个网址google.com/robots.txt 和第二个网址yahoo.com/robots.txt通过我的IP 8.8.8.9

我正在使用request.get方法。

1 个答案:

答案 0 :(得分:1)

在节点中初始化http请求时,可以使用localaddress设置接口:https://nodejs.org/api/http.html#http_http_request_options_callback

  var options = {
    localaddress: '8.8.8.8',
    hostname: 'www.google.com',
    port: 80,
    path: '/upload',
    method: 'POST',
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded',
      'Content-Length': postData.length
    }
    var callback = function (res, err) { ...do something... }
    http.request(options, callback)