Php curl multipart/form-data request failed

145 Views Asked by At

I’m under to try getting response from oracle bi publisher using php-curl with header as multipart/form-data but the result it’s Request failed

I’m trying also to getting the code from postman directly because it work fine with it but also result it’s Request failed

So please help to fix the code

<?php
 
$ch = curl_init();
 
curl_setopt($ch, CURLOPT_URL, 'HOST:PORT/xmlpserver/services/rest/v1/reports/OBTF%2Frapport%2FECHANCE%20LC%2Fapi2/run');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('ReportRequest' => '{\"attributeFormat\":\"html\",\"attributeTemplate\":\"Publisher Template\"}'));
curl_setopt($ch, CURLOPT_USERPWD, 'login' . ':' . 'password');
 
$headers = array();
$headers[] = 'Content-Type: multipart/form-data';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
 
$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
echo $result;
curl_close($ch);
 

1

There are 1 best solutions below

0
TRIKI_Sami On

@CBroe

  CURLOPT_URL => 'http://HOST:PORT/xmlpserver/services/rest/v1/reports/OBTF%2Frapport%2FECHANCE%20LC%2Fapi2/run',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_SSL_VERIFYPEER=> false,
  CURLOPT_HEADER=> FALSE,
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array("ReportRequest"=>'{"attributeFormat":"html","attributeTemplate":"Publisher Template"}'),
  CURLOPT_HTTPHEADER => array(
 'Content-Type: multipart/form-data;boundary=--Boundary_4_543972006_1465550732054--','Content-Length:1'
  ),
));```