2017-05-10 75 views
0

我最近開始與Jira一起工作,並試圖在我的客戶客戶端門戶上製作基於Web的表單,這將允許用戶輸入問題。使用PHP和curl創建Jira問題

從我的搜索,我發現了API的例子吉拉規定:https://developer.atlassian.com/jiradev/jira-apis/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-example-create-issue

但是僅此使用的東西這些行:

curl -D- -u fred:fred -X POST --data {see below} -H 
"Content-Type: application/json" http://localhost:8090/rest/api/2/issue/ 

然而捲曲是我從來沒有使用過。我已將它配置在我的服務器上工作(進行了基本測試以確保它可以)。但是我覺得這個設置不適用於PHP。

在線,我覺得它說破捲曲成這樣的部分:

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_USERPWD, "$username:$password"); 
curl_setopt($curl, CURLOPT_URL, $url); 

,但我非常不確定我會如何打破這種命令進去......還不能確定我將如何接收數據它應該返回(從網站的例子):

{ 
    "id":"39002", 
    "key":"TEST-103", 
    "self":"http://localhost:8090/rest/api/2/issue/TEST-103" 
} 

任何提示,以創建一個問題,在這樣的PHP將是太棒了。謝謝。

+0

可能更適合使用庫來處理請求,例如, http://docs.guzzlephp.org/en/latest/index.html – rishipuri

回答

1

有良好的軟件開發工具包一起工作:

https://github.com/chobie/jira-api-restclient

https://github.com/lesstif/php-jira-rest-client

然後你有很多的功能和一個乾淨的結構JIRA工作。第二個功能更多。

登錄例如:

使用JiraRestApi \配置\ ArrayConfiguration; 使用JiraRestApi \ Issue \ IssueService;

$iss = new IssueService(new ArrayConfiguration(
    array(
     'jiraHost' => 'https://your-jira.host.com', 
     'jiraUser' => 'jira-username', 
     'jiraPassword' => 'jira-password', 
    ) 
)); 
+0

我沒有看到他們的例子中,他們設置用戶名或密碼...有點不確定它如何連接。 https://github.com/lesstif/php-jira-rest-client/blob/master/tests/IssueTest.php和函數testCreateIssue()是我正在尋找,但再次沒有看到一種方法來驗證或連接到Jira。 – Lain

+0

在第一頁是一個例子... https://github.com/lesstif/php-jira-rest-client – Stony

+0

好吧,我只是失明。謝謝 – Lain