我最近开始与 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/
然而,卷曲是我以前从未使用过的东西。我在我的服务器上配置了它以工作(做了一个基本测试以确保它工作(。但我觉得这种设置不是 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中创建这样的问题的技巧都很棒。
有很好的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',
)
));