b/s模式http请求过程
先建立tcp连接
浏览器数据经采集进行编码,通过指定的http协议提交方法将编码后的数据(浏览器自动将数据转换成http消息)按照http消息的格式通过tcp连接提交到指定的服务器的应用程序上,浏览器和服务器双方是通过http协议进行数据交互的,服务器接收到http请求消息,通过读取http请求消息,进行数据索取,在用http响应消息传递给浏览器
(浏览器--http消息(作为输入/输出)---服务器)==浏览器将客户端数据自动封装成http请求消息发送给服务器,服务器应用程序从http请求消息中获取数据对数据进行解析,浏览器自动将服务器发送的数据包封装成http响应消息发送给浏览器

hidden隐藏域(可以放在浏览器中,有一些数据不是用户提交,但是必须提交给服务器的数据可以通过hidden提交,对于浏览器用户来讲,隐藏域是看不见的<input type="hidden" name=”id" value="9"/>)

http请求消息结构
请求起始行=http方法+请求目标+http版本(form中的method/form中的action)
http头集=general headers()+request headers()+entity headers
正文body


http请求方法get/post
get/post的本质区别:get:将用户的提交数据放到http请求消息的请求行中  post:将提交的数据放到http请求消息的包体中

因此get和post传送数据大小才会有不同限制,get是根据浏览器对url的长度限制从而限制get的发送的数据的大小,而post提交的数据是放在请求体中的,因此对数据的大小是无限制的
get:将用户的提交数据放到http请求消息的请求行中
     浏览器发送一个空的http请求主体,请求服务器指定资源,
     使用get方法将采集数据添加到url中,就是将数据放置在http协议头中,
     服务器从http请求消息的请求行中获取用户数据
post:将提交的数据放到http请求消息的包体中

       向浏览器提交数据
      服务器从http请求消息的体body中获取用户数据

                              get                         post

b/s模式客户端http请求过程与服务端http响应过程

post请求

普通请求

b/s模式客户端http请求过程与服务端http响应过程

上传文件请求

b/s模式客户端http请求过程与服务端http响应过程

get请求

b/s模式客户端http请求过程与服务端http响应过程
     

      文件上传流程php.ini

$_FILES【】:可以获取上传文件的相关信息

php.ini中规定了文件上传的最大值,以及post方式提交数据的最大值


      web服务器端其他数据采集方法

$_REQUEST【】:即可以采集get方式提交的url查询字符串中的信息,也可以采集form表单post方式提交的信息

$_SERVER【】:可以得到浏览器端和服务器端主机的一些相关信息

php的预定义变量是一维数组post get cookie---》request  server二维数组file

b/s模式客户端http请求过程与服务端http响应过程

相对路径方便项目的整体移植

相关文章: