簡體   English   中英

CURL PHP發布請求以下載PDF文件

[英]CURL PHP Post request to download PDF file

我有一個類似下面的表格。

我想使用php下載pdf文件,我對CURL有一定的經驗,但是我無法使其正常工作。 CURL請求的外觀應如何,發出請求后如何下載文件?

<form action="https://ems.ms.gov.pl/krs/danepodmiotu.form" method="post" >
    <input value="H4sIAAAAAAAAAJVSv2sUQRj9shAIOfyBYBGiUeHOKsyJmEYb44XIwSHBQ6xEZnc/13Fn5xtnZm/2Umjj3yBIIH+BpIptmhTpbPwL/ANsLAIBC2c3iphDL5nue3xv3nsz7+M3mPWLsJAb213jCjcoLQS58m7yEpM8psoaWCGTMa55gJjjGq0z4xWWkEEpYhZzi2w1DiBP3LpAmbaH6ErdebLf+nr54EcEMwNoJaScIfmIF+jg0uAVH/Gu5CrrDp0RKrtXaQdzvzWnGVo9q6ENQwlaOyzjQlgrSO3vpHdeHG5/jgAq7a/C4j/lnt+yr+ENgIP5P9AURk2Y9Tfg2uTOpiSVkxeYGZGGKMtasoxGrLAMNWce46TQIUqhSaFylj0Me73SOirat0fvtzp5e7lz7PomtKfczwx5G0R6/32vE2KPA+f4B9fJhOHBuK9SrL48q95e2Lt4FL6zD3Ph4gatNIRzaiv1w8wHwsyZGZG/DksTDE2xQLPpx6kp8xD0/mmDNk1wk734MPy+8Gn3XS+CaBD6KEXY7qe1ibrEKLEIQF3iBqpLe+6Xh6eNh5OzX4IrE659UE1JCuvGTb7zDlo1tkaDGvt7+gmOLLt/oQMAAA==" name="t:formdata" type="hidden">
    <input type="hidden" name="t:submit" value="pobierzWydruk">
    <input value="DOWNLOAD" name="DOWNLOAD" type="submit">
</form>

這是我嘗試過的方法,但是CURL返回false。

    $url = 'https://ems.ms.gov.pl/krs/danepodmiotu.form';
    $fields_string = '';
    $fields = array(
        't:submit' => 'pobierzWydruk',
        't:formdata' => 'H4sIAAAAAAAAAJVSv2sUQRj9shAIOfyBYBGiUeHOKsyJmEYb44XIwSHBQ6xEZnc/13Fn5xtnZm/2Umjj3yBIIH+BpIptmhTpbPwL/ANsLAIBC2c3iphDL5nue3xv3nsz7+M3mPWLsJAb213jCjcoLQS58m7yEpM8psoaWCGTMa55gJjjGq0z4xWWkEEpYhZzi2w1DiBP3LpAmbaH6ErdebLf+nr54EcEMwNoJaScIfmIF+jg0uAVH/Gu5CrrDp0RKrtXaQdzvzWnGVo9q6ENQwlaOyzjQlgrSO3vpHdeHG5/jgAq7a/C4j/lnt+yr+ENgIP5P9AURk2Y9Tfg2uTOpiSVkxeYGZGGKMtasoxGrLAMNWce46TQIUqhSaFylj0Me73SOirat0fvtzp5e7lz7PomtKfczwx5G0R6/32vE2KPA+f4B9fJhOHBuK9SrL48q95e2Lt4FL6zD3Ph4gatNIRzaiv1w8wHwsyZGZG/DksTDE2xQLPpx6kp8xD0/mmDNk1wk734MPy+8Gn3XS+CaBD6KEXY7qe1ibrEKLEIQF3iBqpLe+6Xh6eNh5OzX4IrE659UE1JCuvGTb7zDlo1tkaDGvt7+gmOLLt/oQMAAA==');
    foreach ($fields as $key => $value) {
        $fields_string .= $key . '=' . $value . '&';
    }
    $fields_string = rtrim($fields_string, '&');
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, count($fields));
    curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);
    $result = curl_exec($ch);
    curl_close($ch);

以下是一些基本步驟,這些步驟將幫助您使用cURL重新構建任何請求(大部分情況下)。

  1. 在瀏覽器的網絡檢查器中打開“網絡”標簽。

  2. 執行有問題的請求。 根據您的情況,執行觸發PDF下載的所有操作。

  3. 在網絡標簽中,右鍵點擊觸發下載的請求,然后選擇copy as cURL

  4. 將其粘貼到文本編輯器中,然后開始使用PHP cURL綁定重建請求。

粘貼的文本將成為curl命令的命令行版本。 您可以在此處了解每個命令選項的含義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM