• 禪道API機制介紹

    0
    .NET HTML JSON C/C++ 17193 次瀏覽

    禪道項目管理通過底層的框架實現了靈活的API調用機制。通過禪道的API機制,大家就可以實現很多非常有意思的功能。下面我們以一個實際的例子來向大家展示禪道的API機制。
    更多開源詳情:http://www.zentao.net

    一、API機制介紹:

    1.1 禪道提供的API機制都可以通過http協議獲得,返回的數據格式都是json格式的。
    1.2 禪道通過框架共實現了兩種API機制。一種為直接的頁面調用,一種通過超級model調用接口,直接調用model層的方法。
     

    1.2.1 頁面的調用。

    當你訪問禪道的時候,將訪問的url地址中的html換成json,看到的就是json格式的數據。
    比如http://pms.zentao.cn/project-task-8.html,返回的網頁格式,把后面的.html改成.json,返回的是什么?對了,返回的是json格式的數據。
    如果是GET 方式,那么只需要將t參數改成json,http://pms.zentao.cn/?m=project&f=task&t=json.

    1.2.2 超級model調用接口

    頁面的調用,存在一定的局限,比如返回的數據可能沒有你想要的,或者返回了你不需要的數據。為此,我們特地準備了一個超級model調用接口。該接口的使用方式: 

    首先要為相應的帳號增加超級model調用接口的訪問權限。
    然后就可以通過api模塊的getModel方法,獲取任意模塊的model的公開方法了。
    getModel方法需要三個參數,分別是模塊名,方法名,然后是該方法的參數列表,key1=value1,key2=value2這種方式,多個參數之間用英文逗號隔開。

    以調用bug模塊的getUserBugPairs()方法為例:
    GET方式調用: ?m=api&f=getModel&module=bug&methodName=getUserBugPairs&params=account=$account
    PATH_INFO方式:api-getmodel-bug-getUserBugPairs-account=$account.json


     1.3 API調用步驟: 

    禪道的API調用共分為三個步驟:

    1.3.1 獲得session

    首先要訪問api模塊的getSessionID方法,獲得session。
    GET方式:?m=api&f=getSessionID&t=json
    PATHINFO: api-getsessionid.json

    返回的格式中包含sessionName和sessionID。在后續的訪問中,必須以cookie的方式,或者GET方式,將session傳遞給服務器。

    1.3.2 驗證用戶身份。

    然后可以訪問user模塊的login方法,來進行用戶身份的驗證。
    用戶身份驗證,需要提供用戶名和密碼,以post方式傳遞給user-login方法。
    變量名為: account, password。

    1.3.3 調用相應的API
    用戶驗證通過之后,就可以通過頁面調用的api,或者超級model調用的api來獲取相應的數據了。

    相似問題

    相關經驗

    相關資訊

    相關文檔

  • sesese色