繁体   English   中英

如何使用.net中的jira rest api获取项目特定的jira问题?

[英]how to get the project specific jira issues using jira rest api in .net?

我有一个需要在jira中获取特定项目的所有问题的要求,因此为此我创建了一个控制台应用程序,该应用程序具有rest客户端类,通过该类我可以进行GET请求调用,并且出于测试目的,rest api url是

https://jira.atlassian.com/rest/api/latest/issue/JRA-9

使用此网址,我进行HttpWebRequest并以json格式的字符串返回响应。 现在,此json字符串包含所有特定于问题的信息,但我的实际要求是获取所有特定于项目的问题。

我试图找出是否从我得到json的地方得到了用于测试目的的任何项目特定URL,然后发现http://kelpie9:8081/rest/api/2/search?jql=project=QA+order+by+duedate&fields=id,key但是为此我得到“无法解析远程名称:'kelpie9'”错误。

您能帮我吗? `

JIRA的REST API似乎目前不支持任何独立于其search API的基于project的查询。

您可以使用JQL在搜索中指定特定项目。 假设您知道一个项目(例如,“ JRA-9”中的“ JRA”),则可以快速搜索所有项目:

工作结果: https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA : https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA

重要说明之一是,结果返回的是实际总计与实际返回的值:

"startAt":0,"maxResults":50,"total":30177

您可以将查询字符串变量添加到请求中,以获取更多(或更少)结果。 您还可以控制与问题相关的字段以进行检索: https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA&startAt=75&maxResults=75 : https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA&startAt=75&maxResults=75 (请求越慢,可能就越慢不能大量攻击其公共服务器)。

你甚至可以POST表示查询(从链接稍微调整了JSON对象search文档):

{"jql":"project = JRA","startAt":75,"maxResults":75,"fields":["id","key"]}

有趣的是,作为JQL的一部分,您可以按任何字段对结果进行排序。 只需在查询名称中的“ jql = JRA + order + by + id”或"jql": "project = JRA order by id"的项目名称中添加“ order by id”即可,即在POST ed JSON主体中添加"jql": "project = JRA order by id"


注意:以上是对实际问题的实际答案。 但是,字面上的问题是无法解析远程名称的原因:“ kelpie9”错误。

他们的文档显示了kelpie9作为示例名称,正在内部对其进行测试,并在端口8081上运行。 您的计算机不知道名为kelpie9的服务器/计算机,因为它不公开存在。 kelpie9替换为内部使用的JIRA服务器的主机名,将8081替换为正在使用的端口(或者,如果在Intranet站点上查看JIRA时未看到端口号,则将其删除,这意味着http的端口80和https的端口443)。 例如,许多公司将其运行为"https://jira/" 您可以将示例链接替换为https://jira/rest/api/2/search?jql=project=QA+order+by+duedate&fields=id,key

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM