HTTP请求方法有哪些?

Posted 凡猫软件测试

tags:

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




HTTP请求方法


HTTP 协议中定义了几种不同的请求命令,这些命令叫作 HTTP 方法(HTTP Method)。每个HTTP请求报文中都包含一个方法,这个方法会告诉服务器要执行什么动作,如是要获取一个Web 页面还是要删除一个文件。



表3-1列出了5种常见的HTTP 方法。


▼表3-1 常见的HTTP 方法

序号

方法

描述

1

GET

请求指定的页面信息并返回实体主体

2

HEAD

类似于 GET请求,只不过返回的响应中没有具体的内容,用于获取报头

3

POST

向指定资源提交数据进行处理请求(例如提交表单或者上传文件), 数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或对已有资源的修改

4

PUT

从客户端向服务器传送的数据取代指定文档的内容

5

DELETE

请求服务器删除指定的页面


3.2.1

GET方法


GET是最常见的方法,用于获取资源,常用于向服务器查询某些信息。

我们先启动Fiddler, 打开浏览器,输入

http://fanmao.mysxl.cn/, 从Fiddler中我们可以清晰地看到浏览器发出的是GET方法。如图 3-2 所示。

▲图3-2 Fiddler 查看 GET方法


打开网页一般都是用GET方法,因为要从 Web 服务器获取信息。


3.2.2

带参数的GET 方法


浏览器也可以在 GET 方法中把数据传给服务器,数据放在 URL 的问号(?) 后面。

将查询字符串参数追加到URL 末尾,以便将信息发送给服务器。这种方式叫查询字名串,或者叫 Query String,

例如,百度中某搜索URL 如下:

https://www.baidu.com/s?ie=utf-8&newi=l&mod=1&isbd=1&isid=8e7b7a240008899f&wd=%E5%8D%9A%E5%A2%E5%9B%AD%E5%B0%8F%E5%9D%A6%E5%85%8B&rsv_spt=1&rsv_iqid=0xc6716da200078907&issp=l&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8rqlang=cn&tn=baiduhome_pg&rsv_enter=0


查询字符串以“名=值”这样的形式出现,多个名值之间用字符“&”隔开。


如图3-3所示,在Fiddler 中,使用 WebForms 选项卡可以更清楚地看到GET方法中的查询字符串参数。


HTTP请求方法有哪些?

▲图3-3 Fiddler中的WebForms 选项卡


3.2.3

POST 方法


POST 方法通常用来把表单中填好的数据发送给服务器。如图3-4所示。


启动 Fiddler, 打开浏览器,输入

http://fanmao.mysxl.cn/, 输入用户名和密码,然后单击登录。


HTTP请求方法有哪些?

▲图3-4 POST方法


如图3-5所示,我们可以清晰地看到浏览器发出的是 POST方法,该方法把用户名和密码的信息发送给了服务器。


HTTP请求方法有哪些?

▲图3-5 Fiddler中查看POST 方法


使用 WebForms Tab 可以更清楚地看到 Body主体里面的内容。如图3-6所示。


▲图3-6 WebForms 选项卡查看Body


3.2.4

GET和POST方法的区别


GET和POST的区别主要表现在如下方面。


1.GET提交的数据会放在URL之后,以问号(?)分割URL 和传输数据,参数之间以&相连,如 EditPosts.aspx?name=test1&id=123456。POST 方法是把提交的数据放在HTTP 包的 Body中。

2.GET提交的数据大小有限制(因为浏览器对URL的长度有限制), 而POST 方法提交的数据大小没有限制。


3.GET 方式需要使用 Request. QueryString 来取得变量的值,而POST 方法通过Request. Form 来获取变量的值。


4.GET方式提交数据会带来安全问题,比如一个登录页面通过 GET 方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。



往期精彩文章


以上是关于HTTP请求方法有哪些?的主要内容,如果未能解决你的问题,请参考以下文章

python中http请求方法有哪些

常见的HTTP方法有哪些?

php中请求url都有哪些方法

请求方法认识

在http请求中包含了哪些信息

http请求中的8种请求方法