我正在編寫一個將XML張貼到web服務的應用程序,並且在服務器上不斷迎接WebException聲明HTTP 500錯誤。無論如何要查看錯誤的具體細節類似於Internet Explorer中的「不友好」的錯誤消息嗎?在Visual Studio中顯示不友好的HTTP 500錯誤
「查看詳細信息」按鈕似乎沒有列出我正在尋找的確切服務器響應。
謝謝。
下面的代碼和確切的錯誤信息:
static void Main(string[] args)
{
//create requester
WebRequest request = WebRequest.Create("http://server.com/service");
//create string of xml to transfer
string xml = "<xml>some xml goes here</xml>";
//convert string to byte array
byte[] transfer = Encoding.ASCII.GetBytes(xml);
//set up method
request.Method = "POST";
//set up content type
request.ContentType = "text/xml";
//set up content length
request.ContentLength = transfer.Length;
//open data stream
Stream myStream = request.GetRequestStream();
//send the data
myStream.Write(transfer, 0, transfer.Length);
//Create object to capture response
WebResponse response = request.GetResponse();
//Create object to convert response to readable form
StreamReader reader = new StreamReader(response.GetResponseStream());
//Reach each line of the response stream and display on command line
string str = reader.ReadLine();
while(str != null)
{
Console.WriteLine(str);
str = reader.ReadLine();
}
Console.ReadLine();
}
System.Net.WebException was unhandled Message="The remote server returned an error: (500) Internal Server Error." Source="System" StackTrace: at System.Net.HttpWebRequest.GetResponse() at SOAP_Test.Program.Main(String[] args) in :line 41 at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() InnerException:
你使用HttpWebRequest類嗎? – 2010-07-26 14:24:17
你是否控制網絡服務?如果這是一個你在某個地方打電話的黑匣子,那麼你無法控制發回的東西(如果有的話)。如果您控制該服務,您是否可以發佈關於如何處理錯誤的代碼? – 2010-07-26 14:25:26
我正在使用HttpWebRequest類。不幸的是,這是一個黑匣子。但我確實知道服務器應該回應什麼。 我已經用代碼更新了我的帖子。 – grease357 2010-07-26 14:43:16