禅道项目管理软件API功能集成开发方法指南

作为一款优秀的国产项目管理工具软件,禅道提供了开源和商业版本。本文主要介绍基于禅道API接口完成登录认证、创建项目和工单任务的接口集成开发说明。

请自行从公开渠道获取和安装自己的禅道开发测试环境,因为这个工具软件的安装方法很简单,所以这里不做过多说明。

这里主要使用Postman工具来模拟接口方法调用的测试行为,请从以下地址下载和安装postman工具,https://www.getpostman.com/ 。

目录

1、API接口模块与方法

2、几个接口方法的详情说明

(1)创建一个任务的接口方法

(2)查看一个任务的接口方法

(3)用户登录接口

3、通过调用禅道API完成用户登录认证的步骤说明

(1)获取sessionid

(2)使用拿到的sessinid登录

(3)退出登录

(4)查看一个任务

(5)创建一个任务

(6)创建一个项目

(7)数据解析方法


下面直接从禅道API接口开始介绍。

1、API接口模块与方法

在完成禅道系统的部署后,访问网站的下面的路径即可以打开API方法使用说明的页面,下面以我的测试环境为例。

http://192.168.81.7/zentao/dev-api-task.html

2、几个接口方法的详情说明

因为大家使用禅道做功能集成的意图肯定是个性化的,下面只是以我使用到的几个模块方法举例。在需要定制开发特定的功能时,可以专门去调阅特定的禅道模块方法的详细说明。

(1)创建一个任务的接口方法

GET/POST  /zentao/task-create-[projectID]-[storyID]-[moduleID]-[taskID]-[todoID].json

Create a task.

参数列表

类型

描述

projectID

int

 

storyID

int

 

moduleID

int

 

taskID

int

 

todoID

int

注:projectID为必选项,其它参数为可选。

(2)查看一个任务的接口方法

GET  /zentao/task-view-[taskID].json

View a task.

参数列表

类型

描述

taskID

int

(3)用户登录接口

GET/POST  /zentao/user-login-[referer]-[from].json

User login, identify him and authorize him.

参数列表

类型

描述

referer

string

 

from

string

3、通过调用禅道API完成用户登录认证的步骤说明

大体上,需要依次按照以下顺序处理,获取sessionid,登录认证,执行需要的接口调用,登出。

(1)获取sessionid

GET方式

URL:http://192.168.81.7/zentao/api-getsessionid.json

{"status":"success","data":"{\"title\":\"\",\"sessionName\":\"zentaosid\",\"sessionID\":\"mfn6e7p8ptan851aum5l7fcao0\",\"rand\":3167,\"pager\":null}","md5":"a33b09eccf59b5e3e4e4759f0053f5bc"}

(2)使用拿到的sessinid登录

http://192.168.81.7/zentao/user-login.json?zentaosid=mfn6e7p8ptan851aum5l7fcao0

需要使用POST提交方式,提供account和password两个数据。

(3)退出登录

http://192.168.81.7/zentao/user-logout.json

(4)查看一个任务

GET方式

http://192.168.81.7/zentao/task-view-[taskID].json

(5)创建一个任务

 /zentao/task-create-[projectID]-[storyID]-[moduleID]-[taskID]-[todoID].json

POST方式

http://192.168.81.7/zentao/task-create-1-1-3.json?zentaosid=mfn6e7p8ptan851aum5l7fcao0&t=json

projectID取值1,storyID取值为1,modeuleID取值3

(6)创建一个项目

(7)数据解析方法

当你访问使用zentaoPHP开发的页面时,将访问的url地址中的html换成json,得到的就是json格式的数据。

比如http://192.168.81.7/zentao/task-view-37.html,返回的网页格式,把后面的.html改成.json,返回的是什么?对了,返回的是json格式的数据。

返回的数据是做了两次json_encode,下面是做数据解析的代码示例:

$result = file_get_contents('http://pms.zentao.net/project-task-8.json');
$result = json_decode($($result);
if($result->result == 'success' and md5($result->data) == $result->md5)
{
    $data = json_decode($result->data);
    print_r($data);
}

先判断第一层里面的result是否正确,md5签名是否正确,然后再对data对象进行json_decode。


参考资料:

禅道官网近期一直打不开,原因未知。在禅道开发团队所属公司网站上能找到下面这样的一点关于禅道API的说明资料,资料有限,也是维护不足。供参考。

http://devel.cnezsoft.com/book/extension/api-intro-43.html

猜你喜欢

转载自blog.csdn.net/watermelonbig/article/details/81217085