1
服務器發送500錯誤時,我如何獲得responseText我打電話給json web服務發送錯誤消息,通過將StatusCode設置爲500,然後發送錯誤消息作爲響應文本(例如作爲{「消息」:「InvalidUserName」})。當WebRequest.Create(URL).GetResponse()
問題是,如果Web服務發送的StatusCode 500
try
{
WebRequest request = WebRequest.Create(URL);
request.Method = "POST";
request.ContentType = "application/json; charset=utf-8";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader streamReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
string result = streamReader.ReadToEnd();
streamReader.Close();
response.Close();
return result;
}
catch (Exception e)
{
// If web service sends 500 error code then we end up here.
// But there is no way to get response text :-(
}
有沒有辦法解決這個問題的方式ASP.NET不給我響應文本?另外:我正在控制網絡服務,所以它可能是做一些改變他們的解決方案。 (注意:我需要使用普通WebRequest的東西來調用服務 - 在這種情況下,它不會與其他方法一起使用,例如添加爲WebReference等)
任何想法?