http协议

http协议:

       由于客户端和服务器端的版本有很多,为了实现不同版本的浏览器和服务器间的数据交互,就统一规范了数据交互时的格式,也就是HTTP协议(所以称为超文本传输协议)

       没有http协议可以实现数据交互,但是没办法实现大规模各种类型的交互,因为交互时的数据格式太多了,程序员要分别单独处理每一种格式的数据。会阻碍互联网的大规模大范围发展。

http协议的特点:

即http对传输的数据的类型不加以限制,想要知道是什么类型的数据,content-type中有标记了

(每次连接只处理一个请求的意思是)即每次会话都要重新建立连接,但是这样会非常浪费资源,所以http 1.1版本后支持可持续连接

也正是因为采用的是无连接的请求,传输时间才会节省。

也就是不会记忆之前的信息。

 

建立连接通道->客户端发出请求(发送数据是遵循http协议)->服务器端响应请求->关闭连接

 

客户端的请求方式不一样,服务器的对应处理方式也就不一样

 

 

请求方式不是浏览器自己决定的,而是在网页的代码中就已经决定了数据的

Get和post请求方式的区别:

Get只能传送少量的数据不是由http协议决定的,而是由于浏览器的地址栏的长度有限制(get的请求数据一般是拼接在url后面,一般就是拼接在请求头的请求地址中的?后面,也就是放在请求头里,而post有专门的数据行可以存放大规模的数据)

 

因此也就是如果你传输的数据对安全性要求不高,传输的数据量较小,那么你可以用get方式;否则用post

首先应该衡量的是安全性,需要安全性高,那么不管数据量大小,必须用post, 如果对安全性要求不高,然后再看数据量,若数据量较大,选post

最后,同等适用的条件下,选择get,因为它的传输速度更快(可以用字符串直接获取)

 

  

        把计算机网络分层了5层. 因为如果两台计算机能够相互通信的话,实际实现起来是非常困难操作的…我们分层的目的就是为了将困难的问题简单化,并且如果我们分层了,我们在使用的时候就可以仅仅关注我们需要关注的层次,而不用理会其他层。

       如果需要改动设计的时候,我们只需要把变动的层替换即可,并不用涉及到其他的层次。这与我们程序设计中的低耦合是一个概念。

       而我们的HTTP协议是在最上层,也就是应用层。

 


版权声明:本文为qq_35218635原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。