C# Jira对C的反应#
我已经搜索并研究如何获得Jira REST响应已经有相当一段时间了。问题是,当它到达此代码时,将引发异常,要么是错误的请求,要么是内部服务器错误C# Jira对C的反应#,c#,rest,jira,C#,Rest,Jira,我已经搜索并研究如何获得Jira REST响应已经有相当一段时间了。问题是,当它到达此代码时,将引发异常,要么是错误的请求,要么是内部服务器错误 HttpWebResponse response = request.GetResponse() as HttpWebResponse; 它永远不会超出这个代码。相反,我期望: } "errorMessages": [], "errors": { "message": "An error occured ... " } } 有关错误
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
它永远不会超出这个代码。相反,我期望:
}
"errorMessages": [],
"errors": {
"message": "An error occured ... "
}
}
有关错误消息或:
}
"id": "11600",
"key": "RP-547",
"self": "http://jira.com/rest/api/2/issue/11600"
}
关于成功
有什么东西我错过了,或者误解了吗?我如何获得预期的结果
一些额外信息:
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.ContentType = "application/json";
request.Accept = "application/json";
request.Method = method; //POST
if (data != null)
{
using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write(data);
}
}
string base64Credentials = GetEncodedCredentials();
request.Headers.Add("Authorization", "Basic " + base64Credentials);
string result = string.Empty;
HttpWebResponse response = request.GetResponse() as HttpWebResponse; //breaks here
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
result = reader.ReadToEnd();
}
HttpWebRequest为非200 http响应生成异常。 您需要在catch子句中处理错误响应 从: 注 如果引发WebException,请使用异常的响应和状态属性来确定服务器的响应 另见 如果您使用的是.Net 4.5,您也可以使用HttpClient而不是WebRequest。当您说“它永远不会超出此代码”时,我以为您的意思是您的程序挂起,这就是我遇到的问题。你应该关上作家的门。看见即使这些信息与原始问题不完全相关,我也将这些信息放在这里,因为这个问题与jirarestapi的使用有关。不幸的是,这个处理httpresponse的例子似乎在网络上到处传播。