客户端无法使用我的webpart,因为他位于代理服务器后面,他们需要指定用户名和密码才能通过代理.我现在在配置文件中有这个:
<system.net> <defaultProxy> <proxy usesystemdefault="False" proxyaddress="http://127.0.0.1:8888" bypassonlocal="True" /> </defaultProxy> </system.net>
有没有办法为这个代理设置提供用户名和密码?
解决方法
我不知道在web.config的defaultProxy部分执行此操作的方法,但您绝对可以从代码中执行此操作.试试这个:
// Get proxy server info from AppSettings section of Web.Config var proxyServerAddress = ConfigurationManager.AppSettings[ "proxyServerAddress" ]; var proxyServerPort = ConfigurationManager.AppSettings[ "proxyServerPort" ]; // Get proxy with default credentials WebProxy proxy =new WebProxy(proxyServerAddress,proxyServerPort); proxy.Credentials = System.Net.CredentialCache.DefaultCredentials();
Web.Config(配置部分):
<appSettings> <add key="proxyServerAddress" value="proxy.myhost.com" /> <add key="proxyServerPort" value="8080" /> </appSettings>
然后将代理分配给您在webPart中使用的webClient.
编辑:
如果我做了更多的功课,我会意识到你的问题可以用一个属性修复:useDefaultCredentials =“true”
<system.net> <defaultProxy useDefaultCredentials="true"> <proxy usesystemdefault="False" proxyaddress="http://127.0.0.1:8888" bypassonlocal="True" /> </defaultProxy> </system.net>