接口测试三(http协议简介)

转自:http://www.360doc.com/content/16/0128/15/30056680_531241393.shtml

以下是某男程序猿A和女程序猿B的对白:
A:你有男朋友吗?

B:404

A:可以做我女朋友么?

B:501

A:一起吃个饭?

B:200

于是成功约到女神,你懂了么?(不懂活该单身,呵呵~~)

------------------------------------进入正题------------------------------

一、打开百度URL详解

用浏览器打开百度网址,输入任意关键字搜索后:
在这里插入图片描述
详细URL地址复制出来如下
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=monline_3_dg&wd=测试&rsv_pq=d87c123200060e83&rsv_t=34df3NkqrKKYpm5mJCkqszVIvRNqpN%2B1H9cSxLPZMi%2FMhCa48ccyKZrhtT9ZzjLUwv0x&rsv_enter=1&rsv_sug3=1

在fiddler里面抓到的数据包如下,红色框区域

在这里插入图片描述
二、URL模式
  URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下

scheme 指定低层使用的协议(例如:http, https, ftp)
  host HTTP服务器的IP地址或者域名

port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明,例如 http://www.cnblogs.com:8080/

path 访问资源的路径

url-params

query-string 发送给http服务器的数据

anchor- 锚

在这里插入图片描述
由此可以看到访问百度URL的详情:

请求类型(scheme):https

host:www.baidu.com

路径(path): /s

请求参数(url-params):ie=utf-8&f=3&rsv_bp=1&…(问号后面用&隔开)

服务器返回状态(result):200 (请求成功)

三、Get和Post方法的区别
  Http协议定义了很多与服务器交互的方法,最基本的有4种,分别是GET,POST,PUT,DELETE. 一个URL地址用于描述一个网络上的资源,而HTTP中的GET, POST, PUT, DELETE就对应着对这个资源的查,改,增,删4个操作。 我们最常见的就是GET和POST了。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上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码.

四、如何用fiddler查看某个请求是get还是post?

在这里插入图片描述
1)点击左侧,待查看的url地址成选中状态

2)点击右边Inspectors按钮

3)点击Headers

4)查看Request Headers下面:GET,说明是get请求方式

5)再随便点点左侧区域其它的url,可以找到post请求的
在这里插入图片描述

五、查看Request和Response

先看下fiddler工作原理
在这里插入图片描述

也就是终端设备发出请求,fiddler作为代理,传给服务器;

服务器返回数据,fiddler拦截后,再传给终端设备。

Fiddler右边上方区域显示request数据,下方区域显示response数据,如图
在这里插入图片描述

六、get和post请求参数有什么不一样

get请求如下图:
在这里插入图片描述

post请求如下图

在这里插入图片描述

最明显区别就是post请求多了一块区域,称之为body体

也就是说get请求不带body;post请求带body

七、如何查看请求服务器是否成功?

在这里插入图片描述
常见状态码:

200 - 服务器成功返回网页
301 - 永久移动,请求的网页已被永久移动到新位置
404 - 请求的网页不存在,网页不存在。
500 - 服务器遇到错误,无法完成请求。
502 - 服务器作为网关或代理,从上游服务器得到了无效的响应
503 - 服务器暂时不可用,目前无法使用服务器(由于超载或进行停机维护)。

猜你喜欢

转载自blog.csdn.net/weixin_43639443/article/details/89453635