[PHP] PHP Curl 模拟POST 可以https

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

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

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

×
  1. function vpost($url,$data,$cookie){ // 模拟提交数据函数
    7 ^  `/ \; W; T9 `( k
  2.     $curl = curl_init(); // 启动一个CURL会话% @/ \! v5 [- K; t1 f4 J
  3.     curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
    + l: P7 I" @2 l9 ^" e3 b$ J
  4.     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查5 |! a- q& B6 a% B& U8 N
  5.     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在
    9 N9 p$ u' r8 `; Q( G" O0 b- V
  6.     curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
    / i1 A0 ^9 L) e* ?6 ]% k3 W) k
  7.     curl_setopt($curl, CURLOPT_COOKIE, $cookie);* U1 D% z  E3 w/ Z5 v2 g/ k
  8.     curl_setopt($curl, CURLOPT_REFERER,'https://www.baidu.com');// 设置Referer. O. W  ~, C0 ]* u3 I/ v
  9.     curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求7 F1 V7 W( D# x' q% r! w3 ?4 U6 E1 h2 m
  10.     curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包
    - @6 }4 n  [0 U5 f2 p
  11.     curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
    ; J* {% C# ?+ L' I$ ?! ^
  12.     curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
    8 \, a0 @! N1 x$ @  w
  13.     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回. j2 j( i% ]& W; `) s
  14.     $tmpInfo = curl_exec($curl); // 执行操作+ j3 `* T; |( X/ z+ G# E7 |6 d
  15.     if (curl_errno($curl)) {% T# N# ~, ^* \7 v
  16.        echo 'Errno'.curl_error($curl);//捕抓异常7 Y1 j! L/ I: l' E. `. a/ j
  17.     }' \2 o/ g; ]! `/ C; W  \
  18.     curl_close($curl); // 关闭CURL会话
    + ^2 ]- b( ]( r
  19.     return $tmpInfo; // 返回数据; W4 w6 G! O" l7 \2 ]3 L% V
  20. }
复制代码

1 o5 B0 ^' s& T1 U+ y% w, {) Y
+ K$ q3 A) X  n* L
评论0

手机版|小黑屋|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网-持续研发、集成、交付、运营方案资源库

GMT+8, 2026-4-23 01:13 , Processed in 0.108812 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.