资讯专栏INFORMATION COLUMN

CURL模拟请求(get/post)

CoyPan / 1398人阅读

摘要:而它是常连接,即一次连接服务端可处理多个请求,缩短了延时。是应用层协议,如下是很早之前绘制的,仅予参考就是依据规则,来模拟请求服务器资源的客户端工具。一请求结果把百度一下换成一下实现原理,即是在返回的文件流里,替换查找即可。

【先知】

http协议是客户端和服务端数据交互而定的规范。

 具有如下特点:
 1.一般是基于B/S结构访问。
 2.无状态
     服务端没有记忆功能,不能识别客户端。
 3.无连接
     主要是在说http 1.0,它是短连接,客户端一次请求被服务端处理返回后即断开。
     而http 1.1,它是常连接,即一次连接服务端可处理多个请求,缩短了延时。

http是应用层协议,如下是很早之前绘制的,仅予参考.

【curl】

 curl就是依据url规则,来模拟请求服务器资源的客户端工具。
 使用前,要在PHP.ini中,开启PHP的CURL扩展库。
 它本身也支持多个协议,譬如ftp,http,telnet等.(在此,我仅模拟测试http的get/post请求)

【实例】

基本流程,即是

1.初始化
2.设置参数(总要告诉浏览器,你要访问哪个url,带什么参数,是什么类型的请求吧;如果要修改或便于查看,还得以文件流的形式返回;且参数一般是CURLOPT_开头的,手册上遍地都是)
3.执行(相当于提交地址栏,回车)
4.关闭资源

还不清楚,就想一想,你是怎么百度的。

(一)get请求

    

结果:

    把"百度一下"换成"Lin一下";
    实现原理,即是在返回的文件流里,替换查找即可。
    如下:
        加:
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //以文件流的形式返回数据
        改:
        $rt =  curl_exec($ch);    //得到浏览器返回的结果
        echo str_replace("百度","Lin",$rt);    //查找替换后再输出到浏览器

结果:

(二)post请求

     "Lin", "age" => 18);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    /*post基本设置如上*/
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); //以文件流方式返回
    curl_setopt($ch,CURLOPT_HEADER,true);   //header信息也在文件流中返回,查看起来方便
    
    echo "
";
    echo curl_exec($ch);    //输出到浏览器(否则,你会发现你的浏览器比脸都白,白,白)
    curl_close($ch);        //关闭资源,他们总是较大占内存的
    

结果:

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25893.html

相关文章

  • [译]使用Flask实现RESTful API

    摘要:中使用类字典对象来获取请求头信息,使用获取请求数据,如果发送类型是,则可以使用来获取数据。响应使用类处理响应。认证使用下面的代码可以处理。 原创译文,如需转载,请联系译者。 我的简书博客:nummy 原文地址:Implementing a RESTful Web API with Python & Flask 简介 首先,安装Flask pip install flask 阅读这篇文章...

    oogh 评论0 收藏0
  • Python3网络爬虫实战---38、动态渲染页面抓取:Splash的使用

    摘要:上一篇文章网络爬虫实战动态渲染页面抓取下一篇文章是一个渲染服务,是一个带有的轻量级浏览器,同时它对接了中的和库,利用它我们同样可以实现动态渲染页面的抓取。 上一篇文章:Python3网络爬虫实战---37、动态渲染页面抓取:Selenium下一篇文章: Splash 是一个 JavaScript 渲染服务,是一个带有 HTTP API 的轻量级浏览器,同时它对接了 Python 中的 ...

    姘搁『 评论0 收藏0
  • HTTP入门(一):在Bash中curl查看请求与响应

    摘要:入门一在中查看请求与响应本文简单总结的请求与响应。服务器与浏览器的交互浏览器负责发起请求服务器在端口接收请求服务器负责返回内容响应浏览器负责下载响应内容协议的作用就是指导浏览器和服务器如何进行沟通。请求使用来在里创造一个请求,并得到响应。 HTTP入门(一):在Bash中curl查看请求与响应 showImg(https://segmentfault.com/img/remote/14...

    FrancisSoung 评论0 收藏0
  • tornado学习笔记(1)HTTP请求及API测试

    摘要:首先是的请求接着是的请求在本次分享中,我们介绍了的请求,包括请求,并将介绍如何使用和来测试该本次分享到此结束,欢迎大家交流   Tornado是现在的主流 Web 服务器框架,它与大多数 Python 的框架有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其非阻塞的方式和对 epoll 的运用,Tornado 每秒可以处理数以千计的连接,这意味着对于实时 Web 服务来说,T...

    EddieChan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<