[PHP] PHP Curl 模拟POST 可以https

[复制链接]
admin 发表于 2021-5-27 22:38:09 | 显示全部楼层 |阅读模式

登录后,购买下载资源更方便!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  1. function vpost($url,$data,$cookie){ // 模拟提交数据函数
    , Q5 H: X) z1 x! C' ~/ Q2 x& D% ]8 `
  2.     $curl = curl_init(); // 启动一个CURL会话% ?# }2 s5 y0 m( V3 \
  3.     curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址- `; h$ V' s+ k4 @8 W" P, o; s1 s( Q$ w
  4.     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
    * z+ o; H# h' J8 O2 s" R+ Y& _
  5.     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在( U( {( O7 P4 Q
  6.     curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
    ' @3 \/ m8 d) x& j. t2 t9 P1 G
  7.     curl_setopt($curl, CURLOPT_COOKIE, $cookie);
    ) ?& Z# r* \& ~, v0 |
  8.     curl_setopt($curl, CURLOPT_REFERER,'https://www.baidu.com');// 设置Referer
    * m4 o$ O, [2 Y5 \1 T
  9.     curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
    + X. P9 e" [* g% X; q
  10.     curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包
    0 @' O1 e, |) M7 T, V
  11.     curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
    $ M4 {% m& o, P& Q5 s, I
  12.     curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容+ B/ C! c9 b- o: u0 z
  13.     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
    / i& r8 L2 Y2 N" q- p1 y, ?' Z0 s
  14.     $tmpInfo = curl_exec($curl); // 执行操作
    * N. O# f! K- S8 k: z  o0 h
  15.     if (curl_errno($curl)) {. @1 g; L9 o1 a( k
  16.        echo 'Errno'.curl_error($curl);//捕抓异常
    ) j& r* e6 Z1 i# [* q' V
  17.     }
    1 Q2 u4 q. I, w2 T( S
  18.     curl_close($curl); // 关闭CURL会话: [/ E+ H! b1 l$ k& m% @
  19.     return $tmpInfo; // 返回数据
    5 e9 r$ {6 ]+ N! B
  20. }
复制代码
$ K5 J( F, L5 x% `3 {5 J* r

+ v- {3 Q/ [* A8 s' y
评论0

手机版|小黑屋|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网

GMT+8, 2025-4-30 13:58 , Processed in 0.110534 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.