Senden Sie eine vom Server gespeicherte PDF-Datei über Curl PHP-Formulardaten an einen anderen Server
P粉521748211
2023-08-31 12:44:11
<p>Ich versuche, eine auf meinem Server gespeicherte PHP-Datei über die Curl PHP Form Data-Methode an einen anderen Server zu senden. </p>
<p>Normalerweise erfolgt dies durch Absenden des Formulars, Hochladen einer Datei und Senden derselben Datei als Formulardaten an den Curl-PHP-Endpunkt. In diesem Fall habe ich die Datei jedoch bereits auf meinem Server und weiß nicht, wie um die Datei abzurufen, ihr Formulardatenarray zu erstellen und die API-URL als Post-Methode zu senden. </p>
<p>Unten ist eine Art Programm, das ich versuche. Eine davon besteht darin, eine tmp-Datei zu erstellen, darin Daten zu speichern und diese Daten vom tmp-Speicherort an die Curl-Formulardaten zu senden. </p>
<p>$source = file_get_contents("https://url/employee_manual3.pdf");</p>
<pre class="brush:php;toolbar:false;">$tempFile = tempnam(sys_get_temp_dir(), 'File_');
rename($tempFile, $tempFile .= '.pdf');
file_put_contents($tempFile, $source);
// var_dump($tempFile);
//Ausfahrt;
// $post = array(
// "uploadedFile" =" "@", //"@".$tempFile."
// );
// var_dump(file_get_contents($tempFile));
// var_dump(new CURLFILE($tempFile));
//Ausfahrt;
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://API_URL',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING =>
CURLOPT_MAXREDIRS =>
CURLOPT_TIMEOUT =>
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST =>
CURLOPT_POSTFIELDS => array('file' => new CURLFILE($tempFile)),
CURLOPT_HTTPHEADER => array(
„Autorisierung: Bearer API TOKEN HAI MERA“,
'Content-Type: multipart/form-data',
„Cookie: MAIN NAHI BATAUNGA“
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;</pre>
<pre class="brush:php;toolbar:false;"></pre></p>
嗨,您可以查看下面的答案,了解我是如何成功实现这一目标的。