• 接口测试第三课(HTTP协议简介) -- 转载


    一、打开百度URL详解:

    用浏览器打开百度网址,输入任意关键字搜索后:

      

     

    详细URL地址复制出来如下

    https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=monline_3_dg&wd=%E6%B5%8B%E8%AF%95&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的详情:

    1. 请求类型(scheme):https

    2. host:www.baidu.com

    3. 路径(path): /s

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

    5. 服务器返回状态(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 - 服务器暂时不可用,目前无法使用服务器(由于超载或进行停机维护)。

  • 相关阅读:
    MyEclipse数据库反向生成实体类
    Struts2部分标签
    如何使用 Jmeter 发送 Json 请求
    [转]Perfmon
    Jmeter 施压 SQL server数据库的时候,如何设置?
    Tomcat 安装之后,双击Tomcat.exe,无法运行成功,怎么办?
    Jmeter 在什么情况下定义多个thread group?
    Watir RAutomation VS AutoIt to deal with popup
    RAutomation 在 Watir中的使用
    AutoIt:如何处理应用程序端口被占用的情况
  • 原文地址:https://www.cnblogs.com/dtest/p/5356088.html
Copyright © 2020-2023  润新知