我有一些代码可以发送简单的xml Web请求。它是从Windows服务调用的。有时服务开始抛出异常(System.Net.WebException:操作已经超时),并且重新启动服务可以解决问题。这是代码:
public bool PerformXmlRequest(string xml)
{
var httpRequest = (HttpWebRequest)WebRequest.Create(_url);
httpRequest.Method = "POST";
httpRequest.ContentType = "text/xml";
using (var xmlWriter = new StreamWriter(httpRequest.GetRequestStream(), Encoding.UTF8))
{
xmlWriter.WriteLine(xml);
}
using (var httpResponse = (HttpWebResponse)httpRequest.GetResponse())
{
return httpResponse.StatusDescription == "OK";
}
}
是否有任何明显错误可能导致此问题?
答案 0 :(得分:1)
我发现调用代码没有任何问题。
是客户端代码生成的错误还是来自服务?
如果它是来自服务的,那就是需要修复的服务,无论你发送什么服务,服务都不应该超时,它应该在一个更有控制的主管中失败,给出一个更好的错误消息。