HTTP--Request详解

这篇具有很好参考价值的文章主要介绍了HTTP--Request详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

请求消息数据格式

请求行

请求方式 请求url 请求协议/版本
GET /login.html    HTTP/1.1

请求头

客户端浏览器告诉服务器一些信息

请求头名称: 请求头值

常见的请求头:

User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息

可以在服务器端获取该头的信息,解决浏览器的兼容性问题

Referer:http://localhost/login.html

告诉服务器,我(当前请求)从哪里来?

作用:

防盗链:

统计工作:

请求空行

空行,就是用于分割POST请求的请求头,和请求体的。

请求体(正文)

封装POST请求消息的请求参数的

字符串格式:

POST /login.html    HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://localhost/login.html
Connection: keep-alive
Upgrade-Insecure-Requests: 1
 
username=zhangsan    

获取请求消息数据

获取请求行数据

GET /day14/demo1?name=zhangsan HTTP/1.1

方法:

获取请求方式 :GET

String getMethod()

(*)获取虚拟目录:/day14

String getContextPath()

获取Servlet路径: /demo1

String getServletPath()

获取get方式请求参数:name=zhangsan

String getQueryString()

(*)获取请求URI:/day14/demo1

String getRequestURI(): /day14/demo1

StringBuffer getRequestURL() :http://localhost/day14/demo1

URL:统一资源定位符 : http://localhost/day14/demo1

URI:统一资源标识符 : /day14/demo1

获取协议及版本:HTTP/1.1

String getProtocol()

获取客户机的IP地址:

String getRemoteAddr()

获取请求头数据

方法:

(*)String getHeader(String name):通过请求头的名称获取请求头的值

Enumeration getHeaderNames():获取所有的请求头名称

获取请求体数据:

请求体:只有POST请求方式,才有请求体,在请求体中封装了POST请求的请求参数

步骤:

获取流对象

BufferedReader getReader():获取字符输入流,只能操作字符数据

ServletInputStream getInputStream():获取字节输入流,可以操作所有类型数据

再从流对象中拿数据

获取请求参数通用方式

不论get还是post请求方式都可以使用下列方法来获取请求参数

String getParameter(String name):根据参数名称获取参数值 username=zs&password=123

String[] getParameterValues(String name):根据参数名称获取参数值的数组 hobby=xx&hobby=game

Enumeration getParameterNames():获取所有请求的参数名称

Map<String,String[]> getParameterMap():获取所有参数的map集合

请求转发

一种在服务器内部的资源跳转方式

步骤:

通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path)

使用RequestDispatcher对象来进行转发:forward(ServletRequest request, ServletResponse response)

特点:

浏览器地址栏路径不发生变化

只能转发到当前服务器内部资源中。

转发是一次请求

共享数据

域对象:一个有作用范围的对象,可以在范围内共享数据

request域:代表一次请求的范围,一般用于请求转发的多个资源中共享数据

方法:

void setAttribute(String name,Object obj):存储数据

Object getAttitude(String name):通过键获取值

void removeAttribute(String name):通过键移除键值对

获取ServletContext

ServletContext getServletContext()

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:【文末领取】


     【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图+全套资料】


一、Python编程入门到精通

二、接口自动化项目实战

HTTP--Request详解,软件测试,软件测试工程师,自动化测试,http,网络协议,网络,软件测试,程序人生,自动化测试,功能测试

三、Web自动化项目实战

四、App自动化项目实战

HTTP--Request详解,软件测试,软件测试工程师,自动化测试,http,网络协议,网络,软件测试,程序人生,自动化测试,功能测试

五、一线大厂简历

六、测试开发DevOps体系

HTTP--Request详解,软件测试,软件测试工程师,自动化测试,http,网络协议,网络,软件测试,程序人生,自动化测试,功能测试

七、常用自动化测试工具

八、JMeter性能测试

HTTP--Request详解,软件测试,软件测试工程师,自动化测试,http,网络协议,网络,软件测试,程序人生,自动化测试,功能测试

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!文章来源地址https://www.toymoban.com/news/detail-665749.html

到了这里,关于HTTP--Request详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 软件测试技术之单元测试—工程师 Style 的测试方法(2)

    怎么写单元测试? JUnit 简介 基本上每种语言和框架都有不错的单元测试框架和工具,例如 Java 的 JUnit、Scala 的 ScalaTest、Python的 unittest、JavaScript 的 Jest 等。上面的例子都是基于 JUnit 的,我们下面就简单介绍下 JUnit。 JUnit 里面每个 @Test 注解的方法,就是一个测试。@Ignore 可以

    2024年02月11日
    浏览(37)
  • 软件测试工程师面试如何回答测试工作有什么优势和劣势

    软件测试工程师面试的时候,会遇到很多很奇葩的问题,例如今天要讲的这个问题就是很奇葩:测试工作有什么优势和劣势? 我们做软件测试工作的,为了能够把软件中的明显的缺陷找出来,要读几十遍需求文档,跟开发和产品使劲的沟通,有时候还要拿着竞争对手的产品分

    2024年02月02日
    浏览(47)
  • 2023年软件测试工程师,初级到高级进阶路线指南,测试之路...

    提到软件测试工程师时,很多人依然会联想到那些“点点点”并企图在“点点点”中找到缺陷的人,也就是大家常说的依照测试规范和测试案例来对软件进行测试,检查软件是不是有缺陷,判断软件是不是稳定。但这其实是一个很不好的观点。 近年来,随着各大互联网企业的

    2024年02月09日
    浏览(46)
  • 测试开发人均年薪30w+?软件测试工程师如何进阶拿到高薪?

    掌握什么样的技能可以让软件测试工程师获得高薪?在回答这个问题前,我们先了解一下软件测试行业的现状: PS :这里有一套2022最新版的 软件测试 全套 自学教程 ,包含了以下内容,记得一定要下载: ☑ 215集-零基础到精通全套视频课程 ☑ [PPT+代码]-完整配套的教学课件

    2023年04月12日
    浏览(40)
  • 软件测试工程师面试如何描述自动化测试是怎么实现的?

    软件测试工程师面试的时候,但凡简历中有透露一点点自己会自动化测试的技能点的描述,都会被面试官问,那你结合你的测试项目说说自动化测试是怎么实现的?一到这里,很多网友,包括我的学生,也都一脸懵逼的样子。 有心放弃吧,但是看着那么高的薪资,还是很眼热

    2024年02月13日
    浏览(64)
  • 软件测试工程师postman使用基本操作方法

    本文详细介绍了如何使用Postman进行软件测试,包括管理测试用例集,发送请求,设置全局和环境变量,编写前置脚本和断言,进行数据关联,实现文件参数化,以及使用Newman命令执行Postman脚本。

    2024年02月04日
    浏览(64)
  • 一个优质软件测试工程师简历的范文(一定要收藏)

     很多刚转行软件测试的小伙伴是不是不知道怎么写好一份优质的软件测试工程师的简历。今天呢,就给大家分享一下一个优质软件测试工程师简历的范文。记得收藏起来哦。 下面的案例:2-3年的软件测试工程的简历 姓    名:XXX    学历:本科     电    话:186-XXXX-8888

    2024年02月02日
    浏览(53)
  • 2023软件测试工程师必备技能?要卷,谁还不会了......

    软件测试岗位是怎样的? 大伙:测试?简单啊,没什么技术含量,无非就是看需求、看业务手册、看设计文档、然后点点功能是否实现,麻烦点的就是测试下部署安装是否出现兼容性问题等 web自动化测试:https://www.bilibili.com/video/BV1MS4y1W79K/ 没错,不可否认这是踏入软件测试

    2023年04月20日
    浏览(52)
  • 月薪过 3w 的 软件测试工程师 都是怎么做到的?

    对任何职业而言,薪资始终都会是众多追求的重要部分。前几年的软件测试行业还是一个风口,随着不断地转行人员以及毕业的大学生疯狂地涌入软件测试行业,目前软件测试行业“缺口”已经基本饱和。 当然,我说的是最基础的功能测试的岗位需求已经很少了,而自动化、

    2023年04月19日
    浏览(50)
  • 软件测试工程师面试应对如何估算要写多少条测试用例,耗费多长时间?

    作为测试工程师,对测试用例的数量预估是一项基本能力,并且也很重要。因为在衡量和预报工作计划中十分重要,例如,设计用例需要几天,设计多少条、执行多长时间。 首先,预估测试用例数量最重要的依据就是需求。比如下面的这个软件设计界面和需求: 需求: 会员

    2024年02月04日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包