加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中Http协议post请求参数

发布时间:2020-12-13 02:54:48 所属栏目:PHP教程 来源:网络整理
导读:《:PHP中Http协议post请求参数》要点: 本文介绍了:PHP中Http协议post请求参数,希望对您有用。如果有疑问,可以联系我们。 PHP学习 本文给大家介绍PHP中Http协议post哀求参数,具体内容如下所示: WEB开发中信息基本全是在POST与GET哀求与响应中进行,GET因

《:PHP中Http协议post请求参数》要点:
本文介绍了:PHP中Http协议post请求参数,希望对您有用。如果有疑问,可以联系我们。

PHP学习本文给大家介绍PHP中Http协议post哀求参数,具体内容如下所示:

WEB开发中信息基本全是在POST与GET哀求与响应中进行,GET因其基于URL的直观,易被我们了解,可POST哀求因其信息的隐蔽,在安全的同时,也给开发者们模拟发送带来了麻烦.接下来的几篇博文中,我将结合自己的笔记和理解,详细解释PHP进行POST哀求的几种方法,如有错误,烦请指正.

  HTTP协议信息是WEB开发中的一项重要内容,了解它可以赞助我们更深刻地理解BS交互,也有利于我们从更底层理解WEB开发.HTTP协议是一种简单灵活方便的通讯协议,并且要记住,它是一种无状态的协议,即它是一种无记忆的协议,每一次的交互都是单独的.

  我们可以用浏览器的开发工具(IE的F12? 火狐的FireBug等)的“网络”面板来查看HTTP头信息.

  一般地HTTP头信息分为三类:哀求信息,响应信息和交互信息(个人认为也是哀求信息的一种).

1,哀求信息:

  在访问一个网站时会由客户端发出哀求信息,此信息不带有数据,只是单纯地向服务器接触,促使服务器返回响应信息.

  其格式为两部分:哀求行和消息报头.

A.哀求行: method(哀求方法)? path(哀求站内地址)?? HTTP/version(协议/版本信息)

  常见的哀求方法有GET/POST/HEAD/OPTION等

B.消息报头:

  Host(必须):主机和端口号,端口号默认为80

  Accept:期望接收内容类型(image/gif? text/html?? */*)

  Accept-Encoding:期望接收的压缩类型(gzip deflat)

  Accept-Charset:期望接收的字符集(utf-8)

  Accept-Language(zh-CN)

  Cookie:用户的Cookie信息

  Connection:连接控制

  User-Agent:客户端信息

  ... ...

以下是一个典型的哀求头信息:

GET? index.php? HTTP/1.1
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip,deflate,sdch
Accept-Language:zh-CN,zh;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Cookie:SOHUHOMETAB=visit:2; IPLOC=CN1407; SUV=1510312046259910
Host:www.sohu.com
If-Modified-Since:Sat,31 Oct 2015 12:45:22 GMT
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/45.0.2454.99 Safari/537.36

2,响应信息

  服务器返回数据

  响应信息分为三部分:状态行 消息报头 响应正文

A.状态行:HTTP/version(协议/版本信息)? 状态码?? 状态文本(对状态码的文本描述)

  状态码共有5类:

    1XX:表示临时响应,需要哀求者继续操作

    2XX:表示响应成功,服务器成功地响应了哀求

    3XX:表示重定向,需要哀求者进一步操作

    4XX:表示客户端错误,服务器无法正常响应

    5XX:表示服务器端错误,服务器无法正常响应

具体信息可参考:HTTP状态码详解

B.消息报头:

  Server:服务器信息

  Content-Encoding:数据压缩格式

  Content-Length:数据长度

  Content-Type:数据类型

  Cache-Control:缓存控制

  Connection:连接控制

  Date:日期信息

  Expires:返回数据的过期信息

  Last-Modified:返回最后的修改时间

  Set-Cookie:设置客户端的Cookie信息

  ... ...

C.响应正文

  即返回的页面数据,在页面以HTML文档形式表现出来.

以下是常见的响应消息

HTTP/1.1? 200? OK

Cache-Control:no-cache
Connection:close
Content-Encoding:gzip
Content-Length:6947
Content-Type:text/html; charset=GBK
Date:Sat,31 Oct 2015 13:30:11 GMT
Expires:-1
Pragma:no-cache
Proxy-Connection:keep-alive
Server:nginx/1.2.5
Set-Cookie:JSESSIONID=yiuug4yejhc1cdbzydoxlcpn;Path=/

3,交互信息

  是包含了哀求数据的哀求信息 常见于用户上传文件 注册等

  其分为三部分:哀求行 消息报头 哀求正文

A.与哀求信息的哀求行相同

B.在哀求报头的基础上添加了有关哀求正文的数据

  Content-Type:上传信息的内容类型

  Content-Length:上传信息的长度

  ... ...

C.哀求正文:

  即哀求的具体数据串(name=xxx&passwork=xxx),当然为了安全起见,有时会对POST信息加密编码.

以下是典型的哀求消息:

GET? login.php? HTTP/1.1
Host:passport.sohu.com
Accept:text/html,application/xml
Accept-Encoding:gzip,deflate
Accept-Language:zh-CN,zh;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Content-Length:166
Content-Type:application/x-www-form-urlencoded
Referer:http://mail.sohu.com/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/45.0.2454.99 Safari/537.36
Form Data
domain=sohu.com&callback=passport20008375022711697966_cb1446298206568&appid=1113&userid=FDFFDF%40sohu.com&password=a3f4384c2bc44fa909ffd0ecc5fa8eb9&persistentcookie=0

?明白了浏览器都往服务器上发送了些什么,那用其他办法伪装成一个服务器也就不是难事了.

下一节我会介绍PHP和JS处理最基本URL的方式,解决GET哀求部分的同时,也将模拟发送POST哀求的准备做足.

如果您觉得本博文对您有赞助,您可以推荐或点赞,如果您有什么问题,也可以在下方留言,一块讨论,谢谢.

欢迎参与《:PHP中Http协议post请求参数》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读