教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 curl模拟http请求范例详析

curl模拟http请求范例详析

发布时间:2020-12-27   编辑:jiaochengji.com
教程集为您提供curl模拟http请求范例详析等资源,欢迎您收藏本站,我们将为您提供最新的curl模拟http请求范例详析资源

本文的主要内容是用curl模拟HTTP请求,具有一定的参考价值,有需要的朋友可以看看,希望可以帮助到你。

简介

cURL的官方定义为:curl is a command line tool for transferring data with URL syntax,即使用URL语法规则来传输数据的命令行工具

PHP 支持 Daniel Stenberg 创建的 libcurl 库,能够连接通讯各种服务器、使用各种协议。libcurl 目前支持的协议有 http、https、ftp、gopher、telnet、dict、file、ldap。 libcurl 同时支持 HTTPS 证书、HTTP POST、HTTP PUT、 FTP 上传(也能通过 PHP 的 FTP 扩展完成)、HTTP 基于表单的上传、代理、cookies、用户名 密码的认证。

概念

在PHP中使用cURL

图示:

cURL模拟get请求

/**  * get方式发送curl请求  * @param string $url    请求服务器地址  * @param array $header  请求头数据  * @param int $timeout   超时时间  * @return mixed  * @author itbsl  */ function curl_get($url, $header=[], $timeout=30) {      //初始化curl     $curl = curl_init();      //设置curl(请求的服务器地址)     //参数1: curl资源     //参数2: 配置项名称     //参数3: 配置项的值     curl_setopt($curl, CURLOPT_URL, $url);      //跳过安全证书验证     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);  // 从证书中检查SSL加密算法是否存在     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);  // 跳过证书检查      //设置获取的信息以文件流的形式返回,而不是直接输出     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);      curl_setopt($curl, CURLOPT_HTTPHEADER, $header);      curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);      //发出请求     $result = curl_exec($curl);      //关闭curl资源     curl_close($curl);      return $result; }

cURL模拟post请求

/**  * post方式发送curl请求  * @param string $url   请求的服务器地址  * @param array $data   要发送的数据  * @param array $header 请求头数据  * @param int $timeout  超时时间  * @return mixed  * @author itbsl<itbsl@foxmail.com>  */ function curl_post($url, $data=[], $header=[], $timeout=30) {      //初始化curl     $curl = curl_init();      //设置curl(请求的服务器地址)     //参数1: curl资源     //参数2: 配置项名称     //参数3: 配置项的值     curl_setopt($curl, CURLOPT_URL, $url);      //跳过安全证书验证     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);  // 从证书中检查SSL加密算法是否存在     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);  // 跳过证书检查      //设置获取的信息以文件流的形式返回,而不是直接输出     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);      curl_setopt($curl, CURLOPT_HTTPHEADER, $header);      //设置请求方式为post请求     curl_setopt($curl, CURLOPT_POST, true);      //设置post方式提交时携带的数据     curl_setopt($curl, CURLOPT_POSTFIELDS, $data);      curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);      //发出请求     $result = curl_exec($curl);      //关闭curl资源     curl_close($curl);      return $result; }

相关教程:PHP视频教程

以上就是curl模拟http请求范例详析的详细内容,更多请关注教程集其它相关文章!

  • 本文转载于:博客园,如有侵犯,请联系jquerycn@qq.com删除
  • 您可能感兴趣的文章:
    curl模拟http请求范例详析
    PHP CURL获取cookies模拟登录的方法介绍
    php curl模拟post请求的例子
    php中的curl使用心得详解
    php模拟登录qq邮箱(curl命令详解)
    PHP-Curl模拟HTTPS请求(代码实例)
    php如何使用curl?(用法介绍)
    php curl发送请求详细教程
    CURL模拟POST提交的二种方法实例
    PHP模拟POST提交的示例代码

    [关闭]
    ~ ~