我正在使用c#构建一个项目,该项目应从网站获取一些JSON信息,然后对其进行某些处理。一般来说它有80%的时间可以工作,但剩下的20%我得到错误500或错误502甚至是空的JSON文件,我不知道如何处理。我用计时器方法处理了空JSON(在x时间之后再试一次)。但是,错误500和502仍然让我讨厌!
这是我的代码,感谢任何建议:
private void button3_Click(object sender, EventArgs e)
{
var request = WebRequest.Create("http://www.********.ca/api******/status");
request.ContentType = "application/json; charset=utf-8";
request.Proxy = WebRequest.DefaultWebProxy;
request.Method = WebRequestMethods.Http.Get;
request.Timeout = 5000;
string text;
var response = (HttpWebResponse)request.GetResponse();
using (var sr = new StreamReader(response.GetResponseStream()))
{
text = sr.ReadLine().Trim();
sr.Close();
}
textBox2.Text = text;
}
谢谢!
编辑:已解决: 我在MSDN ...
的帮助下解决了这个问题 if (response.StatusCode.ToString() != "OK")
((基本上除代码之外的其他任何东西:200)=>在X时间后再次尝试使用计时器方法 - 限于Y次试验)