php模拟asp中的XmlHttpRequest实现http请求的代码

2015-01-24信息快讯网

为了自己方便模拟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压缩的页面
php_XmlHttpRequest.rar
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
php.ini-dist 和 php.ini-recommended 的区别介绍(方便开发与安全的朋友)
apache+codeigniter 通过.htcaccess做动态二级域名解析
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
通过PHP的内置函数,通过DES算法对数据加密和解密
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
PHP通过session id 实现session共享和登录验证的代码
php 函数中使用static的说明
php注销代码(session注销)
PHP file_exists问题杂谈
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
redis 队列操作的例子(php)
shopex主机报错误请求解决方案(No such file or directory)
php中防止伪造跨站请求的小招式
判断Keep-Alive模式的HTTP请求的结束的实现代码
在php中判断一个请求是ajax请求还是普通请求的方法
php 代码优化之经典示例
php邮件发送,php发送邮件的类
Zend Studio (eclipse)使用速度优化方法
php函数之子字符串替换 str_replace
php expects parameter 1 to be resource, array given 错误
php去掉字符串的最后一个字符附substr()的用法
WordPress判断用户是否登录的代码
用php的ob_start来生成静态页面的方法分析
PHP中uploaded_files函数使用方法详解
PHP $_FILES函数详解
PHP中for与foreach的区别分析
在MongoDB中模拟Auto Increment的php代码
8个出色的WordPress SEO插件收集
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
Zend framework处理一个http请求的流程分析
©2014-2024 dbsqp.com