位置: 编程技术 - 正文
推荐整理分享php 利用socket发送HTTP请求(GET,POST)(php socket select),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php socket select,php socket_create,php socket_select,php socket_read,php socket_read,php sockets,php sockets,php socket_write,内容如对您有帮助,希望把文章链接给更多的朋友!
今天给大家带来的是如何利用socket发送GET,POST请求。我借用燕十八老师封装好的一个Http类给进行说明。
在日常编程中相信很多人和我一样大部分时间是利用浏览器向服务器提出GET,POST请求,那么可否利用其它方式提出GET,POST请求呢?答案必然是肯定的。了解过HTTP协议的人知道,浏览器提交请求的实质是向服务器发送一个请求信息,这个请求信息有请求行,请求头,请求体(非必须)构成。服务器根据请求信息返回一个响应信息。连接断开。
HTTP请求的格式如下所示:
HTTP响应的格式与请求的格式十分相似:
我们可以利用HTTP发送请求的原理,可以重新考虑利用socket发送HTTP请求。
Socket的英文原义是“孔”或“插座”。通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。如此看来,其实利用socket操作远程文件和读写本地的文件一样容易,把本地文件看成通过硬件传输,远程文件通过网线传输就行了。
因而可以将发送请求的考虑成 建立连接->打开socket接口(fsockopen())->写入请求(fwrite())->读出响应(fread()->关闭文件(fclose())。话不多说,直接上代码:
利用此类发送一个简单的GET请求:
返回值为信息,可以对响应信息进行进一步处理,得到自己想得到的内容。
我们来看下一个具体的实例
教你识别简单的免查杀PHP后门 一个最常见的一句话后门可能写作这样php@eval($_POST['cmd']);或这样php@assert($_POST['cmd']);tudouya同学在FREEBUF上给出[一种构造技巧]利用php@$_++;//$_=1$__=("#"^"|");//$
整理php防注入和XSS攻击通用过滤 对网站发动XSS攻击的方式有很多种,仅仅使用php的一些内置过滤函数是对付不了的,即使你将filter_var,mysql_real_escape_string,htmlentities,htmlspecialchars,strip_tags
PHP概率计算函数汇总 其实发这篇博感觉并没有什么用,太简单了,会的人不屑看,不会的人自已动动脑子也想到了。但是看着自已的博客已经这么久没更,真心疼~。粗略算
友情链接: 武汉网站建设