HTTP协议以及HTTP请求中8种请求方法

Posted Python技术开发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP协议以及HTTP请求中8种请求方法相关的知识,希望对你有一定的参考价值。

HTTP协议以及HTTP请求中8种请求方法

什么是协议?

协议,是指通信的双方,在通信流程或内容格式上,共同遵守的标准。

什么是http协议?

http协议,是互联网中最常见的网络通信标准。

http协议的特点

①通信流程:断开式(无状态)

断开式:http协议每次响应完成后,会断开与客户端的连接

无状态:由于服务器断开了之前的连接,就无法知晓连接间的关系

②内容格式:消息头和消息体

HTTP请求的方法:
HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式

1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
3、GET
向特定的资源发出请求。它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如html文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
4、POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
5、PUT
向指定资源位置上传其最新内容
6、DELETE
请求服务器删除Request-URL所标识的资源
7、TRACE
回显服务器收到的请求,主要用于测试或诊断
8、CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
注意:
1)方法名称是区分大小写的,当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方法时,应返回状态码501(Not Implemented)。
2)HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法,特定的HTTP服务器支持扩展自定义的方法。

get 和 post区别

区别:

get请求无消息体,只能携带少量数据

post请求有消息体,可以携带大量数据

携带数据的方式:

post请求将数据放在消息体中

GET请求请提交的数据放置在HTTP请求协议头中,而POST提交的数据则放在实体数据中;
GET方式提交的数据最多只能有1024字节,而POST则没有此限制。


以上是关于HTTP协议以及HTTP请求中8种请求方法的主要内容,如果未能解决你的问题,请参考以下文章

HTTP/1.1协议支持的8种请求方法

HTTP协议的8种请求类型介绍

HTTP协议的8种请求类型介绍

HTTP协议的8种请求类型介绍

http请求中的8种请求方法

HTTP请求8种方法