php - 通过 cURL 和 PHP 在远程站点提交表单,并下载响应文件,远程页面是 html 和 https
问题描述
我正在尝试在远程站点上提交一个表单,该表单的输出是一个我想在本地存储到我的站点的 pdf 文件。我想使用 PHP 和 cURL 通过 cron 作业自动执行此操作。
问题:
- 远程站点是 https(更糟糕的是它没有正确设置)
- 该网站是 html 而不是 PHP,但它给出的结果就像 PHP
到目前为止我尝试过的
我在 PHP 中使用了 cURL,但效果不佳。它只是提交一个响应,其中不包括来自表单提交的响应。
我试图在我的本地主机上创建远程表单,当我提交表单时,它确实返回了 pdf 文件,但这个解决方案不使用 Curl,因此我无法自动化它。
到目前为止我尝试过的代码
<?php
// set post fields
$post = [
'bench_sno' => '1',
'causelist_date' => '2010-10-1',
'btnSearch' => 'Search Causelist',
];
$ch = curl_init('http://peshawarhighcourt.gov.pk/app/site/4/p/Causelists_List.html');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
// execute!
$response = curl_exec($ch);
// close the connection, release resources used
curl_close($ch);
// do anything you want with your response
//var_dump($response);
echo $response;
?>
当我只是将远程表单复制到我的站点并提交表单时,它确实可以正常工作,但问题是它不适用于 cURL。我需要通过 cron 作业自动执行此任务,如果有任何其他解决方案,我可以考虑。
解决方案
正如问题本身所讨论的那样,@vivek_23 指出将其包含在字段中,该表单现在可以使用
<input type="hidden" name="url" value="http://peshawarhighcourt.gov.pk:443/app/site/4/p/Causelists_List.html">
推荐阅读
- node.js - 套接字 io 在服务器端(GKE)没有连接事件的情况下连接
- python - Python:按组计算数据帧中的特定出现次数
- vim - vim-latex 和折叠
- python - 使用嵌套字典和自定义参数创建 MySQL 插入查询
- javascript - 如何准确测量 JavaScript 中排序函数所花费的时间
- java - 使用retrofit2解析来自openweathermap的数据(使用纬度和经度)
- xamarin - Xamarin iOS 构建错误:解压本地框架失败
- apache-arrow - 如何将 Java 异常从箭头飞行服务器传递到客户端?(都使用 Java 库)
- ios - 如何修复 TextField 绑定
在 SwiftUI 中显示和编辑 - reactjs - 使用 async/await 在 useEffect 内的 try catch 块中未定义数据,但在切换到 Promises 时有效