HTTP协议,HTTP协议是什么?返回列表
上传时间:2015-02-02 内容关键字:
当我们在采集时,可以不发送Accept-Encoding信息,这样采集直接是源码,当然我们也可以采集gzip (提高速度),再用PHP解压gzip的内容。
10.http协议和持久链接----------分块传输:
应用范围:
网页聊天服务器,新浪微博在线聊天,google mail网页聊天,都有用到。
原理:
http协议的特点 连接 《》 断开服务器响应content-length收到指定的length长度的内容时,也就断开了。
在http1.1协议中,运行你不写content-length,比如要发送的内容长度确实不知道时,这个时候就需要一个特殊的
content-type:chunked
分块传输的原理是这样的:
123asdf\r\n
123asdf个长度的内容传输给客户端\r\n
。。。。。
4356H\r\n
浏览器继续接受4356H长度的内容\r\n
直到最后发送一个0\r\n就标记发送完了,断开连接。
实例1演示:
set_time_limit(0); //表示让服务器请求永远不超时
$i = 1;
$pad = str_repeat(" ",4000);
while($i++){
echo $pad,"
";
echo $i,"
";
ob_flush(); //刷新PHP程序的缓冲,而不论PHP执行在何种情况下(CGI ,web服务器等等)。
flush(); //该函数将当前为止程序的所有输出发送到用户的浏览器。
sleep(1);
}
思考:如果while循环中不是1,2,3 。。。而是数据库中的内容呢,而是2人的聊天记录呢?
答案:这样就能达到一个几十通讯。因为服务器端---不间断---推送信息---到客户端。
实例2演示: