xmlhttprequest php,php模拟asp中的XmlHttpRequest实现http请求

这是一个用PHP编写的HTTP请求类,模拟ASP中的XMLHTTP组件,支持GET和POST方法,以及gzip压缩。类中包含各种方法如设置请求头、超时时间,获取服务器响应头和正文。自动处理Host头和POST请求时的Content-Length与Content-Type。适用于需要进行HTTP请求的PHP场景。
摘要由CSDN通过智能技术生成

为方便模拟asp里面的xmlhttp组件写的phphttp请求类,支持gzip压缩。

类名 :HttpRequest($url="",$method="GET",$useSocket=0)

//$url为请求的地址;默认请求方法为GET;$useSocket默认为0,使用fsockopen方法,如果设置为1则使用socket_create方法

方法:

open($ip="",$port=-1)           //打开同服务器的连接,默认不设置这两个参数(在linux用时,请求的不是hostname解析的IP,因此加了这两个参数,以连接真实的服务器IP)

setTimeout($timeout=0)      //设置获取数据的超时时间,必须在send方法调用之前设置才有效,单位秒,默认值0为不限制

setRequestHeader($key,$value="")     //设置请求头,必须在send方法调用之前设置才有效

removeRequestHeader($key,$value="")  //移除指定键值的请求头,必须在send方法调用之前调用才有效

send($data="")                        //发送数据$data到服务器

getResponseBody()               //获取服务器返回的文本

getAllResponseHeaders()        //获取服务器响应的所有头信息

getResponseHeader($key)      //获取服务器响应的某个头信息,例如Server,Set_Cookie等

属性:

$url                             //要请求的url

$method                   //请求方法(POST/GET)

$port                          //请求的端口

$hostname              //请求的主机名

$uri                            //url的文件部分

$protocol                  //请求协议(http)(包括本属性的以上5个属性均由程序自动通过url分析)

$excption                  //异常信息

$_headers=array()   //请求头array("key"=>"value")

$_senddata               //发送到服务器的数据

$status                       //返回的状态码

$statusText                 //状态信息

$HttpProtocolVersion    //服务器的HTTP协议版本

注意:

Host头由程序自动设置,当用POST方法请求时,Content-Length和Content-Type已被自动设置。

支持gzip压缩的页面。

点这里下载完整代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值