1. ホーム
  2. http

[解決済み] node.js http.Clientでhttpプロキシを使うにはどうしたらいいですか?

2022-04-28 15:50:49

質問

node.jsからHTTPを発信したいのですが、標準の http.Client . しかし、私のネットワークから直接リモートサーバーに到達することができないので、プロキシを経由する必要があります。

node.jsにプロキシを使用するように指示するにはどうすればよいですか?

どのように解決するのですか?

ティム・マクファーレン 's 回答 は、HTTPプロキシの使用に関して、近いものがありました。

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/ しかし、それはサーバーがホストヘッダが正しくないことを気にしないためです。