(HttpWebResponse)webrequest.GetResponse()响应的时候报错。
估计是IIS配置问题?
IIS的超时如果设置的太短,而网络访问时间太长,会导致这个问题。
说错了,是asp.net执行超时限制
参考
http://www.cnblogs.com/kingboy2008/p/3711143.html
超时了,或服务端执行没
返回
IIS和你的VS是同一台机器吗?如果不是,确保IIS所在机器能够访问请求的url.
另外IIS下asp.net的运行账户是比较低的Network Service(IIS6) 或者其他的专用账户(IIS7). 确保有权限访问internet,主要是如果有proxy的情况下。
万能的CSDN,有没有哪位大神知道怎么解决这问题??
发现一个新问题
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true;//总是接受
}
在 vs直接运行CheckValidationResult这个委托方法被调用1次。 部署在IIS下面被调用了2次。不知是什么原因。
CheckValidationResult 看上去是验证证书等,是不是这方面没通过验证
贴一下异常详细信息吧。
代码很简单,证书和密码都是验证通过的。
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
X509Certificate cer = new X509Certificate(cert, password);
HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(url);
webrequest.ContentType = "application/x-www-form-urlencoded";
webrequest.ClientCertificates.Add(cer);
webrequest.Method = "post";
webrequest.ProtocolVersion = HttpVersion.Version10;
using (webrequest.GetResponse()) 这个位置报的错
{
}
private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true;//总是接受
}
已经找到问题原因了,结贴。