深圳住房和建设局网站统一,楼网络规划设计方案,用phpcms建站的网站,网络营销案例成功案例分析请求消息数据格式
请求行
请求方式 请求url 请求协议/版本
GET /login.html HTTP/1.1
请求头
客户端浏览器告诉服务器一些信息
请求头名称: 请求头值
常见的请求头#xff1a;
User-Agent#xff1a;浏览器告诉服务器#xff0c;我访问你使用的浏览器版本信息
可…请求消息数据格式
请求行
请求方式 请求url 请求协议/版本
GET /login.html HTTP/1.1
请求头
客户端浏览器告诉服务器一些信息
请求头名称: 请求头值
常见的请求头
User-Agent浏览器告诉服务器我访问你使用的浏览器版本信息
可以在服务器端获取该头的信息解决浏览器的兼容性问题
Refererhttp://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/xhtmlxml,application/xml;q0.9,*/*;q0.8
Accept-Language: zh-CN,zh;q0.8,zh-TW;q0.7,zh-HK;q0.5,en-US;q0.3,en;q0.2
Accept-Encoding: gzip, deflate
Referer: http://localhost/login.html
Connection: keep-alive
Upgrade-Insecure-Requests: 1usernamezhangsan
获取请求消息数据
获取请求行数据
GET /day14/demo1?namezhangsan HTTP/1.1
方法
获取请求方式 GET
String getMethod()
(*)获取虚拟目录/day14
String getContextPath()
获取Servlet路径: /demo1
String getServletPath()
获取get方式请求参数namezhangsan
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):根据参数名称获取参数值 usernamezspassword123
String[] getParameterValues(String name):根据参数名称获取参数值的数组 hobbyxxhobbygame
Enumeration getParameterNames():获取所有请求的参数名称
MapString,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编程入门到精通
二、接口自动化项目实战 三、Web自动化项目实战
四、App自动化项目实战 五、一线大厂简历
六、测试开发DevOps体系 七、常用自动化测试工具
八、JMeter性能测试 九、总结尾部小惊喜
生命不息奋斗不止。每一份努力都不会被辜负只要坚持不懈终究会有回报。珍惜时间追求梦想。不忘初心砥砺前行。你的未来由你掌握
生命短暂时间宝贵我们无法预知未来会发生什么但我们可以掌握当下。珍惜每一天努力奋斗让自己变得更加强大和优秀。坚定信念执着追求成功终将属于你
只有不断地挑战自己才能不断地超越自己。坚持追求梦想勇敢前行你就会发现奋斗的过程是如此美好而值得。相信自己你一定可以做到