7

を使用するときTcpClientのように、C# でHTTP プロキシを介して通信するにはどうすればよいですか?WebProxyHttpWebResponse

4

3 に答える 3

8

TCP には、HTTP プロキシに直接相当するものはありません。HTTP では、クライアントは (通常) プロキシについて認識しています。クライアントはプロキシと通信し、プロキシに代わりに実際の Web サーバーに接続するように依頼します。

TCP はそのようなことを定義していないため、プロキシは透過的 (つまり、ルーターまたはオペレーティング システムがクライアントに知らずに実行するもの、たとえばiptablesを使用) であるか、TCP 上のプロトコルの一部として (別の回答で言及されているSOCKSと同様に、HTTPプロキシはこの良い例です)。

于 2009-03-27T21:45:08.130 に答える
3

低レベルのソケット プログラミングを行う場合は、独自のプロキシ クライアントを作成する必要があると確信しています。HTTP プロトコルのみを扱っている場合は、おそらく HTTP 固有のクラスを使用する方がよいでしょう。ソケットでそれを行う必要がある場合、HTTP 仕様はプロキシの動作を適切に記述しているため、独自のクライアントを作成できます。

于 2009-03-27T21:45:08.880 に答える
1

SOCKS プロキシを使用する場合は、C# 用に作成された SOCKS ライブラリが既にいくつかあります。これを試してみてください。

于 2009-03-27T21:47:11.743 に答える