通过php卷曲文件时,获取XSRF检查失败

时间:2012-10-31 18:07:01

标签: php curl jira

我有以下代码尝试将附件上传到Jira问题:

$ch = curl_init();
curl_setopt($ch, CURLOPT_USERPWD, "username:password");
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: multipart/form-data;'
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, 'https://jira.example.com/rest/api/2/issue/JT-1/attachments');
curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// same as <input type="file" name="file_box">
$post = array(
    "file"=>"@/tmp/Screen_Shot_2012_10_18_at_2.58.33_PM.png",
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$response = curl_exec($ch);

var_dump($response);
var_dump(curl_error($ch));

curl_close($ch);

然而我收到的错误是:

XSRF check failed

我该怎么做以防止出现此错误?

1 个答案:

答案 0 :(得分:1)

发现我需要添加标题:

X-Atlassian-Token: nocheck

根据我的要求。