行业动态

HTTP请求方式有哪些-软件测试知识

  HTTP工作原理

  HTTP协议定义了web客户端如何从web服务器请求web页面,以及服务器如何将web页面传递给客户端。HTTP协议使用请求/响应模型。客户端从服务器请求消息。请求消息包括方法、URL、协议版本、请求头和请求数据。服务器用状态行响应,状态行包括协议版本、成功或错误代码、服务器信息、响应头和响应数据。

HTTP请求方式有哪些-软件测试知识

  HTTP请求/响应步骤

  客户端连接到Web服务器->发送HTTP请求->服务器接受请求,返回HTTP响应->释放连接TCP连接->客户端浏览器解析HTML内容。

  1、客户端连接到Web服务器

  HTTP客户端(通常是浏览器)建立到web服务器HTTP端口(默认为80)的TCP套接字连接。

  2、送HTTP请求

  客户端通过TCP套接字向web服务器发送文本请求消息。请求消息由四部分组成:请求行、请求头、空行和请求数据。

  3.服务器接受请求并返回一个HTTP响应

  web服务器解析请求并定位请求的资源。服务器将资源的副本写入TCP套接字,客户端读取它。响应包括状态行、响应头、空行和响应数据。

  4、释放TCP连接

  如果连接模式关闭,服务器将主动关闭TCP连接,客户端被动关闭连接并释放TCP连接。如果连接模式保持活动状态,则连接将保持一段时间,在此期间可以继续接收请求。

  5、客户端浏览器解析HTML内容

  客户端浏览器首先分析状态行,以查看指示请求是否成功的状态代码。然后分析每个响应头,这表示以下是HTML文档和文档字符集中的字节数。客户端浏览器读取响应数据HTML,根据HTML语法对其进行格式化,并将其显示在浏览器窗口中。

  什么是幂等和非幂等

  在了解HTTP请求方式之前,我们先来了解一下“幂等”和“非幂等”。

  幂等性:对于相同的行为,如果无论多少次,最终结果都是相同的,则该行为称为幂等。

  非理想性:对于相同行为,如果最终结果与执行次数相关,每次结果不同,则称为非幂等。

  HTTP的请求方式有哪些?

  GET:从服务器获取资源(一项或多项)。发送请求来获得服务器上的资源,请求体中不会包含请求数据,请求数据放在协议头中。另外get支持快取、缓存、可保留书签等。幂等

  POST:在服务器新建一个资源。和get一样很常见,向服务器提交资源让服务器处理,比如提交表单、上传文件等,可能导致建立新的资源或者对原有资源的修改。提交的资源放在请求体中。不支持快取。非幂等

  PUT:在服务器更新资源(客户端提供改变后的完整资源)。和post类似,html表单不支持,发送资源与服务器,并存储在服务器指定位置,要求客户端事先知道该位置;比如post是在一个集合上(/province),而put是具体某一个资源上(/province/123)。所以put是安全的,无论请求多少次,都是在123上更改,而post可能请求几次创建了几次资源。幂等。

  DELETE:从服务器删除资源。请求服务器删除某资源。和put都具有破坏性,可能被防火墙拦截。如果是https协议,则无需担心。幂等

  CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。就是把服务器作为跳板,去访问其他网页然后把数据返回回来,连接成功后,就可以正常的get、post了。

  OPTIONS:获取http服务器支持的http请求方法,允许客户端查看服务器的性能,比如ajax跨域时的预检等。

  TRACE:显服务器收到的请求,主要用于测试或诊断。一般禁用,防止被恶意攻击或盗取信息。

  HEAD:向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。

  以上内容为大家介绍了HTTP请求方式有哪些,本文由多测师亲自撰写,希望对大家有所帮助。了解更多软件测试相关知识:https://www.duoceshi.com/xwzx-hydt/

新闻资讯

联系我们

联系人:王女士

手机:17727591462

电话:0755-21072941

邮箱:hr@duoceshi.com

地址: 广东省深圳市龙华区龙华街道清湖和平路62号优鼎企创园D栋201室,202室

用手机扫描二维码关闭
二维码