我想要的基本上就是登录,显示来自一个简单过滤器的信息,就像里程碑中所有打开的错误一样。一旦我病得那么远,就可以处理文档
我希望使用简单的 PHP,那是因为我是 PHP 新手,所以编码越复杂,我就越难弄清楚。
这个脚本是我最接近成功的:
<?php
define('JIRA_URL', 'https://mysite.atlassian.net');
define('USERNAME', 'me@gmail.com');
define('PASSWORD', '11111');
function post_to($resource, $data) {
$jdata = json_encode($data);
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_POST => 1,
CURLOPT_URL => JIRA_URL . '/rest/api/2/' . $resource,
CURLOPT_USERPWD => USERNAME . ':' . PASSWORD,
CURLOPT_POSTFIELDS => $jdata,
CURLOPT_HTTPHEADER => array('Content-type: application/json'),
CURLOPT_RETURNTRANSFER => true
));
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result);
}
function create_issue($issue) {
return post_to('issue', $issue);
}
$new_issue = array(
'fields' => array(
'project' => array('key' => 'FOO'),
'summary' => 'Test via REST',
'description' => 'Description of issue goes here.',
'issuetype' => array('name' => 'Story')
)
);
$result = create_issue($new_issue);
if (property_exists($result, 'errors')) {
echo "Error(s) creating issue:\n";
var_dump($result);
} else {
echo "New issue created at " . JIRA_URL ."/browse/{$result->key}\n";
var_dump($result);
}
?>
它返回在http://mysite.atlassian.net/browse/创建的新问题
但是,当我将 var_dump ($result) 放在那里时,它只返回 null,所以我不知道 jira URL 是否错误或我的密码是否错误,或者它是否为新的 rest API 提供了过时的代码。
如果我可以对 API 进行 1 次简单查询并在我的 PHP 页面上看到返回的任何内容,我将是一个快乐的露营者。上面的示例创建了一个新问题,这只是我正在使用的示例,但我可以只返回任何类型的数据,所以我的主要问题是获取有效连接并返回一些信息,所以我知道它正在工作并且无法启动然后尝试一些不同的东西。
我有管理员访问权限,但我不清楚是否需要在管理员端启用某些东西。