我正在编写一个程序,它从服务器检索一些数据,对其进行一些操作,并将输出保存到 csv 文件。我遇到的问题是服务器(我不负责)总是返回 HTTP 500 内部服务器错误。我已经与负责它的团队进行了交谈,虽然他们知道这个错误,但他们说它的影响不足以让他们解决。
有没有办法让我在我的代码中忽略这个响应并仍然获取数据?
如果您使用的是 HttpWebRequest/Response,这应该可以帮助您入门:
response = null;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("<url>");
response = (HttpWebResponse)request.GetResponse();
//no error
}
catch (WebException e)
{
if (e.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)e.Response;
if((int)response.StatusCode == 500)
{
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
{
var result = sr.ReadToEnd();
}
}
}
}