使用PHP和curl创建一个Jira问题

时间:2017-05-10 14:32:18

标签: php api curl jira jira-rest-api

我最近开始与Jira合作,并且正在尝试在我的客户客户端门户网站上创建一个基于Web的表单,以便人们输入问题。

从我的搜索中我发现了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/

然而,curl是我以前从未使用过的东西。我已将它配置在我的服务器上工作(进行了基本测试以确保它确实)。但我觉得这个设置不适用于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中创建问题的任何提示都非常棒。感谢。

1 个答案:

答案 0 :(得分:1)

有很好的SDK可供使用:

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

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

然后你有很多功能和一个干净的结构来使用JIRA。第二个功能更多。

登录示例:

使用JiraRestApi \ Configuration \ ArrayConfiguration; 使用JiraRestApi \ Issue \ IssueService;

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