[英]jira rest api error in creating issue
嗨,我在尝试使用rest api和php在jira中创建问题时遇到以下错误。创建问题的错误:object(stdClass)[1] public'errorMessages'=> array(size = 0)empty public'errors '=> object(stdClass)[2] public'summary'=>字符串'Field'summary'不能设置。 它不在适当的屏幕上,或者未知。” (length = 79)public'description'=>字符串'field'description'不能设置。 它不在适当的屏幕上,或者未知。” (length = 83)`我正在使用以下源代码:
<?php
define('JIRA_URL', 'xxxxxxxx');
define('USERNAME', 'xxxxxxxxx');
define('PASSWORD', 'xxxxxxxx');
function post_to($resource, $data) {
$curlname=CURLOPT_POST;
$curlvalue=1;
$jdata = json_encode($data);
$ch = curl_init();
curl_setopt_array($ch, array(
$curlname => $curlvalue,
CURLOPT_URL => JIRA_URL . '/rest/api/latest/' . $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' => 'xxx'),
'summary' => 'Test via REST',
'description' => 'Description of issue goes here.',
'issuetype' => array('name' => 'Task')
)
);
$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";
}
?>
出于安全原因,带有xxxx的字段已替换。 我想知道如何纠正此错误。
当我看到这是一年前提出的问题时,我会继续回答:
发生“不在适当的屏幕上,或未知”错误,因为您使用的帐户无权查看这些字段。
使用要提供给服务的帐户凭据登录到JIRA实例,并尝试在与$new_issue["fields"]["project"]["key"]
的值相同的队列(项目)中创建票证。 $new_issue["fields"]["project"]["key"]
。 这很重要,因为不同的队列将具有不同的权限。 当表单提供了用于创建问题的字段时,您可能不会看到“摘要”和“描述”字段。 您正在使用的帐户将需要添加到Administrator组(还有其他具有不同权限的组,例如Developer和Member)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.