0
点赞
收藏
分享

微信扫一扫

C# 连接/查询Jira

殇感故事 2022-09-02 阅读 33

查询jira数据,如果是前端,可以按照如下格式直接访问,获取数据

http://jira.company.com/rest/api/2/search?jql=project = REM AND resolution = Unresolved ORDER BY priority DESC, updated DESC 

标红的俩段,第一段是公司/组织的jira地址,第二段是查询参数。

当然,前提是要设置token。

 

C#连接Jira,网上的参考写的都很乱,基本都是以前弃用的版本方案,自己总结了下

通过NuGet引用:

Atlassian.SDK和Atlassian.SDK.Signed随意一个都行

C# 连接/查询Jira_数据

 

请求Jira-Issues数据:

  1. 获取连接实例--以前的版本,是通过Jira jira = new Jira(url, "admin", "password")获取Jira连接实例,现在的版本已经弃用了。当前通过Jira.CreateRestClient,也可以通过new Jira(new ServiceLocator(), new JiraCredentials(username, password), new JiraRestClientSettings().Cache)获取
    而CreateRestClient方法是封装此Jira构造函数然后返回实例。
  2. 获取Issues--上面提到的查询issue数据,Atlassian提供的dll将“rest/api/2/search”查询API封装了一下。

1     /// <summary>
2 /// 请求Issues
3 /// </summary>
4 /// <param name="jiraUri">公司/组织的Jira地址,如https://jira.huawei.com</param>
5 /// <param name="jqlText"></param>
6 /// <returns></returns>
7 public static async Task<IPagedQueryResult<Issue>> RequestAsync(string jiraUri,string jqlText)
8 {
9 //之前的版本,Atlassian已经弃用
10 // Jira jira = new Jira(url, "admin", "password");
11 var jiraCvteCom = "https://jira.huawei.com";
12 var jira = Jira.CreateRestClient(jiraUri, "admin", "password");
13 var requestText = "project = TestProject AND issuetype = 用户问题 AND status in (新建, 处理中) ORDER BY Rank ASC";
14 //GetIssuesFromJqlAsync相当于 $"{jiraUri}/rest/api/2/search?jql={requestText}";
15 var list = await jira.Issues.GetIssuesFromJqlAsync(jqlText, 100);
16 return list;
17

注:Atlassian.Net SDK 源码及官网文档: ​​https://bitbucket.org/farmas/atlassian.net-sdk/wiki/Home​​

JIRA 6.4.12 REST API documentation:​​https://docs.atlassian.com/jira/REST/latest/​​

作者:唐宋元明清2188

本文版权归作者所有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。



举报

相关推荐

0 条评论