我有一个ASP MVC控制器动作。 我正在尝试发布网络请求
public ActionResult Index()
{
WebRequest request = HttpWebRequest.Create("http://www.example.com");
WebResponse response = request.GetResponse();
string str = response.ToString();
}`
我收到“WebException”,无法解析远程名称:'www.example.com'
如果我启动Fiddler,那么webrequest就可以了。
我尝试添加:
<system.net>
<defaultProxy>
<proxy usesystemdefault ="True" bypassonlocal="True" />
</defaultProxy>
到Web.config(有和没有hte bypassonlocal),它仍然不起作用。
有什么建议吗?
答案 0 :(得分:0)
尝试明确指定代理服务器:
<system.net>
<defaultProxy>
<proxy proxyaddress="http://proxy.yourcompany.com:80" />
</defaultProxy>
</system.net>
您也可以以编程方式设置代理:
request.Proxy = new WebProxy("http://proxy.yourcompany.com:80", true);
将usesystemdefault
设置为true
时,应用程序将使用Internet Options
对话框中定义的代理。在IIS中部署应用程序时,它通常在具有非常有限权限的Network Service
帐户下执行,它甚至没有任何GUI会话,因此无法推断代理服务器。