1

我将数据存储在一个表中,该表是 base64 编码的二进制文件数据。我正在将此数据从 BMC Remedy HelpDesk 的 7x 版安装迁移到 Jira Service Desk。我希望能够通过附件 api 将二进制文件数据直接发送到 Jira。我真的不想先在我的文件系统上本地创建文件。有没有办法将二进制数据提供给 PHP 的 CURLFile?

这是我用来通过 api 发布本地文件的示例代码:

$process=curl_init($url);
$headers = array(
  'X-Atlassian-Token: nocheck',
  'Content-Type: multipart/form-data',
  'Authorization: Basic XXX'
);

$cfile = new CURLFile("/path/to/file.jpg");
$cfile->setPostFilename("uploaded.jpg");
$data = array('file'=>$cfile);

curl_setopt_array(
  $process,
  array(
    CURLOPT_POST=>true,
    CURLOPT_VERBOSE=>1,
    CURLOPT_POSTFIELDS=>$data,
    CURLOPT_SSL_VERIFYHOST=> 0,
    CURLOPT_SSL_VERIFYPEER=> 0,
    CURLOPT_RETURNTRANSFER=>true,
    CURLOPT_HEADER=>false,
    CURLOPT_HTTPHEADER=> $headers
  )
);

$result=curl_exec($process);
$ch_error = curl_error($process);
if ($ch_error) {
  print "cURL Error: " . $ch_error;
} else {
  print "\n" . $result . "\n";
}
curl_close($process);
4

0 回答 0