HTTP协议 GET和POST

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wyplj2015/article/details/88042215

1、HTTP协议

HTTP是客户端浏览器或其他程序与Web服务器之间的应用层通信协议。

2、HTTP特点

(1)支持客户/服务器模式。

(2)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

(3)灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type(Content-Type是HTTP包中用来表示内容类型的标识)加以标记。

(4)无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

(5)无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。(但是在实际应用当中并不是完全这样的,引入了Cookie和Session机制来关联请求。)

3、HTTP请求方法

      1.GET:获取资源

  GET方法用来请求访问已被URI识别的资源。也就是指定了服务器处理请求之后响应的内容。

  2.POST:传输实体主体

  POST方法用来传输实体主体。POST与GET的区别之一就是目的不同,二者之间的区别会在文章的最后详细说明。虽然GET方法也可以传输,但是一般不用,因为GET的目的是获取,POST的目的是传输。

  3.PUT:传输文件

  PUT方法用来传输文件。类似FTP协议,文件内容包含在请求报文的实体中,然后请求保存到URL指定的服务器位置。

  4.HEAD:获得报文首部

  HEAD方法类似GET方法,但是不同的是HEAD方法不要求返回数据。用于确认URI的有效性及资源更新时间等。

  5.DELETE:删除文件

  DELETE方法用来删除文件,是与PUT相反的方法。DELETE是要求返回URL指定的资源。

4、GET和POST区别

 A. 从字面意思和HTTP的规范来看,GET用于获取资源信息而POST是用来更新资源信息。

 B. GET提交请求的数据实体会放在URL的后面,用?来分割,参数用&连接,举个栗子:/index.html?name=wang&login=1

 C. GET提交的数据长度是有限制的,因为URL长度有限制,具体的长度限制视浏览器而定。而POST没有。

 D. GET提交的数据不安全,因为参数都会暴露在URL上。

参考:https://www.cnblogs.com/wxisme/p/6212797.html

猜你喜欢

转载自blog.csdn.net/wyplj2015/article/details/88042215
今日推荐