我有一个流量很大的ASPX页面,根据每个用户的请求调用一个Web服务如下。
string uri = "Path.asmx";
string soap = "soap xml string";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Headers.Add("SOAPAction", "\"http://xxxxxx"");
request.ContentType = "text/xml;charset=\"utf-8\"";
request.Accept = "text/xml";
request.Method = "POST";
using (Stream stm = request.GetRequestStream())
{
using (StreamWriter stmw = new StreamWriter(stm))
{
stmw.Write(soap);
}
}
WebResponse response = request.GetResponse();
response.close();
一切正常,但有时我会遇到以下错误。
远程服务器返回一个错误:(500)System.Net.HttpWebRequest.GetResponse()
有没有人知道这个错误,或者谁能告诉我我做错了什么。
谢谢
发布于 2018-03-27 15:56:44
我会说你的代码是好的,至少是调用web服务的部分。该错误似乎是在实际的Web服务中。
要从Web服务器获取错误,请添加一个try catch并捕获一个WebException。WebException有一个名为Response的属性,它是一个HttpResponse。然后你可以记录返回的任何内容,并上传代码。稍后在日志中检查并查看实际返回的内容。
https://stackoverflow.com/questions/-100007811
复制相似问题