【发布时间】:2014-09-20 16:43:54
【问题描述】:
您好,当我尝试使用带有 php.Error(s) 的 php.Error(s) 在 jira 中创建问题时,我遇到了以下错误: 对象(stdClass)[1] 公共“错误消息”=> 数组(大小=0) 空的 公共“错误”=> 对象(stdClass)[2] public 'summary' => string 'Field 'summary' 不能被设置。它是 不在适当的屏幕上,或未知。 (长度=79) public 'description' => string 'Field 'description' 不能 放。它不在适当的屏幕上,或未知。 (长度=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 的字段。 我想知道如何纠正这个错误。
【问题讨论】: