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

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

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

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

您能帮我吗?
`

最佳答案

JIRA的REST API当前似乎不支持与project API分开的任何基于search的查询。

您可以使用JQL在搜索中指定特定项目。既然您知道一个项目(例如“ JRA-9”中的“ 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(请求的速度越慢,可能无法很好地利用它们的大型公共服务器)。

您甚至可以POST代表查询的JSON对象(从链接的search文档中略微调整):

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


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



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

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

09-26 21:36
查看更多