Http绑定上的代理

时间:2011-10-14 06:28:49

标签: c# asp.net networking proxy web-config

我有一个Web应用程序连接机器上的Web服务使用代理服务器。 Internet Explorer上的连接正常,如图所示

Proxy settings 我的web.config是:

    <system.net>
        <defaultProxy>
            <proxy autoDetect="true" usesystemdefault="true"/>
        </defaultProxy>
    </system.net>
   <system.serviceModel>


       <bindings>
         <basicHttpBinding>

            <binding name="ProcessSoap" closeTimeout="00:01:00" openTimeout="00:01:00"
               receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"

useDefaultWebProxy="true" hostNameComparisonMode="StrongWildcard"
               maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
               messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                >
               <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                  maxBytesPerRead="4096" maxNameTableCharCount="16384" />
               <security mode="None">

               </security>
            </binding>
         </basicHttpBinding>
      </bindings>
      <client>
         <endpoint address="http://www.serveraddressthatiwanttoconnect.com/services/WebService.asmx"
            binding="basicHttpBinding" bindingConfiguration="ProcessSoap"
        contract="PINAlmaServis.ProcessSoap" name="ProcessSoap" />
  </client>

我想使用系统代理设置,因为它可以随时更改。 “kurumsalproxy”是本地网络上的计算机名称。我在http://msdn.microsoft.com/en-us/library/kd3cf2ex.aspx上尝试了web.config的所有可能变体,但无法建立连接。

有什么我想念的吗?

2 个答案:

答案 0 :(得分:0)

  

我想使用系统代理设置

没有“系统”代理设置。每个用户都拥有个人代理配置。您可以使用代理配置创建用户并更改应用程序池标识以使用该帐户。

更新:How to use the proxy used in Internet Explorer in an ASP.NET application

答案 1 :(得分:0)

我认为您不需要更改应用程序池标识,如果您仔细阅读此服务器故障线程,

https://serverfault.com/questions/34940/how-do-i-configure-proxy-settings-for-local-system

如果您的应用程序池标识是网络服务,则需要为系统帐户(本地系统,本地服务和网络服务)配置代理设置。