2008-11-10 137 views
6

我正在構建一些自定義工具來處理JIRA安裝,並且公開的SOAP API非常棒,除了沒有任何參數被命名。JIRA SOAP API文檔?

例如,原型getIssue是:

RemoteIssue getIssue (string in0, string in1); 

所有SOAP RPC方法遵守這個約定,所以沒有證件我敢hardpressed搞清楚什麼來傳遞這些很多。

有誰知道最權威的API文檔指南?

+0

我使用API​​來見http://confluence.atlassian.com/display/JIRA/JIRA+RPC+Services搜索可能的方法名稱,然後閱讀源代碼以查看實際預期的內容。 – mdoar 2012-01-16 17:35:57

回答

15
+1

我必須有點不熟練,但我不完全滿意這個文檔。我幾乎與你的配置相同,我想使用createIssue方法。 爲此,我創建了一個RemoteIssue對象的實例,並設置了以下參數:類型,摘要,項目,受託人,描述和優先級,它們都是字符串。 但我必須爲類型設置什麼值? RemoteIssueType.name? RemoteIssueType.id?以及總結,項目等? 我在哪裏可以找到關於此的精確文檔?感謝您的幫助 – PierrOz 2009-07-07 09:21:27

2

你發現的Javadoc鏈接是正確的。您還應該知道,並非所有內容都通過SOAP或RPC接口公開,但您可以使用REST接口完成任何操作。不幸的是,REST界面沒有很好的文檔記錄,但是您可以使用HTML流量檢測器工具(如IE的Fiddler)來抓取從Web界面發送到服務器的實際POST數據,並將特定調用的接口需要。並不總是最簡單的方法,但它確實有效。

3

我發現這很簡單,直觀的參數應該是。根據你要進行的複雜程度,你可能會猜到你應該通過什麼。

有雖然一個超級重要的(這是用Python SOAPpy的):

self.proxy = WSDL.Proxy(jiraUrl) 
self.token = self.proxy.login(self.username, self.password) 
... 
issues = self.proxy.getIssuesFromFilter(self.token, args[0]) 

從login()方法獲得令牌後,您需要在把它作爲參數傳遞給所有其他的SOAP調用。搞清楚了這一點後,它已經相當簡單的計算出的參數應該是什麼(例如,getIssuesFromFilter應採取filterId爲其他參數)