透過 Curl PHP 表單資料將伺服器儲存的 PDF 檔案傳送到另一台伺服器
P粉521748211
P粉521748211 2023-08-31 12:44:11
<p>我正在嘗試透過 Curl PHP Form Data 方法將儲存在我的伺服器上的 PHP 檔案傳送到另一台伺服器。 </p> <p>通常,這是透過提交表單並上傳文件並將相同的文件作為表單資料發送到Curl PHP 端點來完成的,但在這種情況下,我的伺服器上已經有了該文件,並且我陷入如何取得的部分該檔案並建立其表單資料數組並將API Url 作為post 方法傳送。 </p> <p>下面是我正在嘗試的某種程式。其中之一是創建一個 tmp 檔案並在其中儲存數據,並將該數據從 tmp 位置發送到curl 表單數據。 </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); // exit; // $post = array( // "uploadedFile" => "@" . $tempFile, //"@".$tempFile.";type=application/pdf", // ); // var_dump(file_get_contents($tempFile)); // var_dump(new CURLFILE($tempFile)); // exit; $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://API_URL', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS => array('file' => new CURLFILE($tempFile)), CURLOPT_HTTPHEADER => array( 'Authorization: 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>
P粉521748211
P粉521748211

全部回覆(1)
P粉321676640

嗨,您可以查看下面的答案,了解我是如何成功實現這一目標的。

// $source = file_get_contents("https://URL/assets/email_images/employee_manual3.pdf");

    $file_path = __DIR__.'/../../../assets/email_images/employee_manual3.pdf';

    // var_dump(__DIR__.'/../../../assets/email_images/employee_manual3.pdf');
    // exit;

    // var_dump(new CURLFILE($file_path, 'application/pdf', 'file'));
    // exit;

    $curl = curl_init();

    curl_setopt_array($curl, array(
        CURLOPT_URL => 'API URL',
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => '',
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 0,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => 'POST',
        CURLOPT_POSTFIELDS => array('file' => new CURLFILE($file_path, 'application/pdf', 'file')),
    ));

    $response = curl_exec($curl);

    curl_close($curl);
    echo $response;
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!