[PHP] PHP Curl 模拟POST 可以https

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

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

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

×
  1. function vpost($url,$data,$cookie){ // 模拟提交数据函数
    $ {) A" r- J* \0 C
  2.     $curl = curl_init(); // 启动一个CURL会话  h5 @& Q7 E0 I8 p$ O: L0 e
  3.     curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址- _* }) I! `  @/ h
  4.     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查3 v2 W" h; a4 l1 M( L
  5.     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在
    / X$ x& b- P; \# _0 B
  6.     curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
    - g# g' ^0 n, ~6 C) v, {
  7.     curl_setopt($curl, CURLOPT_COOKIE, $cookie);0 U* g2 y8 q" A
  8.     curl_setopt($curl, CURLOPT_REFERER,'https://www.baidu.com');// 设置Referer
    5 i  t5 A1 [- ^4 F. M# y
  9.     curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
    # d& Q# e* P( N9 I4 u& o
  10.     curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包+ h8 x. ~1 V8 V" w
  11.     curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
    / ^2 ?0 o$ b. S( D! W
  12.     curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
    ( T8 h5 x' y- a8 F& p
  13.     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回! P2 v# X& i" R: X0 g- `
  14.     $tmpInfo = curl_exec($curl); // 执行操作* y& j, f( c0 a+ w
  15.     if (curl_errno($curl)) {1 W6 q- {$ M% Y- N6 A( U
  16.        echo 'Errno'.curl_error($curl);//捕抓异常
    6 y. P; k' d7 h/ l
  17.     }% n& F* K, T+ \% B9 ]
  18.     curl_close($curl); // 关闭CURL会话
    4 A- B# U9 X0 i5 X% I
  19.     return $tmpInfo; // 返回数据
    ; X. F% y1 c: J' W
  20. }
复制代码
& ^$ K1 U- S% `% i+ ^! n
/ Y$ _# l8 `) {* G
评论0

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

GMT+8, 2025-11-5 01:20 , Processed in 0.182013 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.