我正在尝试使用HTTP请求向BonitaBPM发送文件,但是当我使用文件获取内容时,我尝试发送的文件是空的,并且HTTP请求显然不起作用
$file_contents = file_get_contents("C:/inetpub/wwwroot/upload/Director.png");
$data1 = array(
"caseId"=> $case_id[1],
"file"=>"C:/inetpub/wwwroot/upload/Director.png",
"name"=>"doc_invoice",
"fileName"=> $_FILES['file_attach']['name'],
"description"=> "Invoice"
);
//Structure of process data to start case
$options1 = array(
"http" => array(
"method" => "POST",
"header"=> "POST /bonita/API/bpm/caseDocument HTTP/1.1\r\n".
"Host: bonita.libertypr.com\r\n".
"Cookie: ". $display[1]."\r\n".
"Content-Type: application/json\r\n" .
"Accept: application/json\r\n".
"Cache-Control: no-cache\r\n".
"Pragma: no-cache\r\n".
"Connection: Keep-Alive\r\n\r\n",
"content" => json_encode($data1)
)
);
//decode process data and adds document to case
$url1 = "http://bonita.libertypr.com:8081/bonita/API/bpm/caseDocument";
$context1 = stream_context_create($options1);
$result1 = file_get_contents($url1, false, $context1);
$response1 = json_decode($result1);
答案 0 :(得分:0)
在调用此API调用之前,请确保您在Bonita端进行了身份验证。 有关详细信息,请参阅此链接: http://documentation.bonitasoft.com/rest-api-overview#authentication
如果不是,Bonita API调用将被拒绝。
为了进一步分析造成问题的原因,您应该了解代码和Bonita之间发送的HTTP请求和响应。 为此,您可以使用Wireshark
等工具捕获HTTP流量干杯,