【发布时间】:2017-06-23 06:29:24
【问题描述】:
我对编程很陌生。我需要对我的HttpWebRequest 到Api 进行异常处理。下面是我的代码,我之前没有做过错误处理,所以只是一个如何完成这个的例子将不胜感激。
private void button1_Click(object sender, EventArgs e)
{
Class1.PostDevices x = new Class1.PostDevices();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(webAddr);
request.ContentType = "application/json";
request.Method = "POST";
request.Timeout = 5000;
using (var streamWriter = new StreamWriter(request.GetRequestStream()))
{
string jsonstring;
MemoryStream stream1 = new MemoryStream();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Class1.PostDevices));
x.notification = new Class1.Notification();
x.profile = "dev";
x.notification.message = "Hello World";
ser.WriteObject(stream1, x);
stream1.Position = 0;
StreamReader sr = new StreamReader(stream1);
jsonstring = sr.ReadToEnd();
Debug.WriteLine(JObject.Parse(jsonstring));
streamWriter.Write(jsonstring);
streamWriter.Flush();
}
HttpWebResponse httpResponse = (HttpWebResponse)request.GetResponse();
if (httpResponse.StatusCode == HttpStatusCode.OK)
{
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
string result = streamReader.ReadToEnd();
Debug.WriteLine(JObject.Parse(result));
Reponse.PostDevicesReponse MyResult = JsonConvert.DeserializeObject<Reponse.PostDevicesReponse>(result);
}
}
}
}
【问题讨论】:
-
在 'try{ } catch(Exception objex)' 块中定义你的代码并记录它。对于日志记录,您可以创建自定义异常记录器以存储在文件中,也可以使用任何 3rd 方库,例如 Log4Net...等。
-
您当前的应用程序是asp.net web 应用程序吗?
-
是的。你能告诉我怎么做吗
标签: c# error-handling exception-handling httpwebrequest