当前位置: 首页 > 面试题库 >

如何将HTTP代理与node.js http.Client一起使用?

太叔灿
2023-03-14
问题内容

我想使用standard从node.js发出传出HTTP调用http.Client。但是我无法直接从网络访问远程服务器,需要通过代理。

如何告诉node.js使用代理?


问题答案:

关于使用HTTP代理,Tim
Macfarlane
的答案很接近。

使用HTTP代理(用于非安全请求)非常简单。您连接到代理并正常发出请求,只是路径部分包含完整的url,并且主机标头设置为您要连接的主机。
Tim与他的回答非常接近,但是他错过了正确设置主机头的操作。

var http = require("http");

var options = {
  host: "proxy",
  port: 8080,
  path: "http://www.google.com",
  headers: {
    Host: "www.google.com"
  }
};
http.get(options, function(res) {
  console.log(res);
  res.pipe(process.stdout);
});

记录下来,他的答案确实适用于http://nodejs.org/,但这是因为他们的服务器不在乎主机头是否正确。



 类似资料:
  • 我正在使用ssh-D创建套接字代理,想知道如何使用pip(或easy\u install)吗?我找到了这个问题,但那是一个http代理。 另外,请给我一个在OS X下工作的解决方案。(我尝试了proxifier,它可以与pip安装一起工作,但不能与sudo pip安装一起工作)

  • 我正在尝试使用swagger记录akka-超文本传输协议API 我拥有的是: 这会生成一个json,我可以在swagger UI中查看它。但是,我不能使用生成的示例,因为缺少auth选项。 我没有找到任何使用swagger-akka-http的例子,只有一些使用 config的例子 在< code>yaml中,可能是这样的: 但是,我没有。除了通过注释之外,我也不能控制生成的。 在IIUC中,提及

  • 问题内容: 每个开启器基本版本是否可以通过一个袜子服务器上的SOCKS代理使用urllib2来获取页面?我已经看到了使用setdefaultproxy方法的解决方案,但是我需要在不同的开瓶器中使用不同的袜子。 因此,有一个SocksiPy库,它很好用,但是必须以这种方式使用: 也就是说,它为所有urllib2请求设置相同的代理。如何为不同的开瓶器使用不同的代理? 问题答案: 尝试使用pycurl:

  • 我想通过主机上的Fiddler应用程序从仿真设备捕获所有流量。经过我所有的尝试,我最终得到了无限数量的超时CONNECT请求,即使是在HTTP(非HTTPS)请求上。 我所做的: Android模拟器代理设置: 小提琴手设置: 将以下行添加到主机主机文件:和Android设备主机文件:。这样做是为了1)防止Chrome强制切换到HTTPS 2)将此名称指向正确的IP地址,因为它在主机和Androi

  • 我在Ubuntu 14.04中安装了phpbrew以使用PHP5.4。它工作得很好,但当我尝试使用composer时除外,composer会忽略phpbrew并安装与PHP5.5相关的依赖项。 有没有办法强制composer与phpbrew config兼容?我试图在我的作曲家中添加:php:“5.4”。json,但是它说这个要求在我的php版本中是不可能的。

  • 我是Micronaut框架的新手,我正在尝试使用entitymanager创建我的存储库。我这样创建了我的存储库 我使用这个类实现接口并注入entitymanager 问题是我一直有这个错误: PS:我已经启用了注释处理