当前位置: 首页 > 编程笔记 >

求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路

董宜然
2023-03-14
本文向大家介绍求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路,包括了求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路的使用技巧和注意事项,需要的朋友参考一下

下面代码使用curl模拟post请求链接后直接显示出了文件内容,如何修改成不显示内容而直接下载请求到的.torrent格式文件呢

function curl_post($header,$data,$url)
{
 $ch = curl_init();
 $res= curl_setopt ($ch, CURLOPT_URL,$url);
 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
 curl_setopt ($ch, CURLOPT_HEADER, 0);
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
 curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch,CURLOPT_HTTPHEADER,$header);
 $result = curl_exec ($ch);
 curl_close($ch);
 if ($result == NULL) {
 return 0;
 }
 return $result;
} 
 $url = 'http://www.bttiantang.com/download4.php' ; 
 $header = array("Host:www.bttiantang.com",
 "Content-Type:application/x-www-form-urlencoded",
 'User-Agent: Mozilla/4.0 (compatible; MSIE .0; Windows NT 6.1; Trident/4.0; SLCC2;)'); 
$data = 'action=download&id=26881&uhash=eecf3d3071a7b672c314bc39';
$ret = curl_post($header, $data,$url);
//需将内容显示修改为文件下载
echo $ret;

------解决思路----------------------

不要echo $ret;

把$ret写入文件中去。保存起来

------解决思路----------------------

$ret = curl_post($header, $data,$url);
//需将内容显示修改为文件下载
$filename = 'x.torrent';
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=$filename"); 
echo $ret;

下载的 x.torrent 用迅雷打开为

本文给大家分享了求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路,希望大家喜欢,请持续关注本站,本站每天都有新的内容更新,谢谢。!

 类似资料:
  • 我有一些python代码,它使用请求成功地从URL下载图像,并将其保存到中。我想测试一下,它应该做什么。我使用响应来测试JSON文件的获取,但我不确定如何模拟获取文件的行为。 我假设这类似于嘲笑一个标准的响应,就像下面一样,但是我想我忽略了如何将设置为文件... 更新:在Ashafix的评论之后,我正在尝试这个(python 3): 但随后,当我正在测试的代码尝试执行我得到的请求时: 感觉几乎是对

  • 各位大佬下午好,请问要怎么通过bat文件处理txt的文本内容。 现在的情况是我通过notepad++的文本工具处理txt文件内容。 以下是我的手动操作步骤。 1、我通过正则把 txt中的文本每行 字数进行限制代码如下: 2、然后继续通过替换,把txt文本中的“,。!” 等内容替换为空。 3、然后在移除空行。 4、至此完成一个txt文档的处理工程 每天要重复处理几百个txt文档,请问,怎么批量操作以

  • 我正在使用嵌入Java的netty 4.1,并尝试从管道中的客户端POST请求中检索数据。我在网上找到了几种选择,但都没用。。。 也许有人对此有一个有用的想法。 向所有提供帮助的人致以问候和感谢。 管道: 处理程序:

  • 我正在使用POST请求向服务器发送CSV文件。 我正在使用一个类似文件的对象与 如果CSV文件相当大,并且我的内存有限,或者我使用类似文件的对象将永远不会在内存中加载整个文件,那么会有问题吗?我对此不确定。 我知道有流选项,但听起来更像是为了获得响应而不是发送数据。

  • 我是改造的新手,并试图使用改造提出POST请求。我的 POST 请求有一个复杂的 JSON 正文,如下所示: 有效载荷: 我将接口定义为 我不确定我的用户类应该是什么样子,我希望有效载荷和上面提到的一样,到目前为止我的用户类是 我不确定Personalinfo,ContactInfo等是否应该是具有JSON请求中提到的所有字段的单独类,或者我应该将它们作为User类中的内部类以及如何使用User类

  • 一、修改请求 在上一步中,我们恢复了截获的请求,没有进行任何更改。当我们在将请求转发到目的地之前修改被拦截的请求时,就会发挥拦截的全部功能。您可以继续上一步中的窗口和已配置的拦截规则。 欢迎来到mitmproxy教程。在本课程中,我们将介绍对截获请求的修改。 点击查看教程 二、影片内容 欢迎来到mitmproxy教程。在本课程中,我们将介绍对截获请求的修改。 我们配置和使用与上一教程中相同的拦截规