如何在c#中使用带有代理支持的http帖子

时间:2009-09-03 10:00:38

标签: c# httpwebrequest

如何在c#和多部分表单数据上传方法中使用具有代理支持的http post

3 个答案:

答案 0 :(得分:22)

This post by Brian Grinstead解释了如何做到这一点。

对于代理支持,您只需将Proxy设置传递给HttpWebRequest即可。因此,在上面的示例中,您将更改:

HttpWebRequest request = WebRequest.Create(postUrl) as HttpWebRequest;

要:

string MyProxyHostString = "192.168.1.200";
int MyProxyPort = 8080;

HttpWebRequest request = WebRequest.Create(postUrl) as HttpWebRequest;
request.Proxy = new WebProxy (MyProxyHostString, MyProxyPort);

答案 1 :(得分:2)

如果您需要配置代理,则可以在.config文件中执行此操作: -

<system.net>
  <defaultProxy enabled="true">
    <proxy proxyaddress="http://myproxyserver:8080" bypassonlocal="True"/>
  </defaultProxy>
</system.net>

请参阅表格数据发布中的question

答案 2 :(得分:0)

如果Web请求在localhost中使用默认代理正常工作 并且没有在您的Web服务器上工作,那么您必须设置您的 公司批准的代理,并将您要连接的URL列入白名单 来自Web服务器中的Web应用程序。

您可以在web.config或代码中提及代理设置。

<system.net>
  <defaultProxy enabled="true">
    <proxy proxyaddress="http://yourcompanyproxyserver:8080" bypassonlocal="True"/>
  </defaultProxy>
</system.net>

(或)

HttpWebRequest wr = (HttpWebRequest)WebRequest.Create("URL");
wr.Proxy = new WebProxy("companyProxy",Portnumber);
wr.Method = "POST";