解析Request和Response
简介:
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。 request和response对象即然代表请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就行了。要向容器输出数据,只需要找response对象就行了。
HttpServletResponse对象代表服务器的响应。这个对象中封装了向客户端发送数据、发送响应头,发送响应状态码的方法。
Response常见应用:
向客户端输出中文数据 用PrintWriter(字符流)发送数据:
示例:response.getWriter().write(“中国” );有没有乱码? 原因:以默认编码发送数据 ISO-8859-1(没有中国二字编码),此时会发生乱码 解决办法: 通过设置响应头告知客户端编码方式:
response.setHeader("content-type", "text/html;charset=UTF-8");//告知浏览器数据类型及编码
response.setCharacterEncoding("UTF-8");//告诉服务器应用使用UTF-8解析文本注意:不要忘记告诉客户端的编码方式。 由于经常改动编码,response提供了一种更简单的方式 response. setContentType(“text/html;charset=UTF-8”);其作用相当于以上两条代码。
发送http头,控制浏览器定时刷新网页 1、输出一个随机数,控制浏览器每2S刷新一次 2、利用Refresh刷新到其他组件。模拟注册页面,注册处理交由一个Servlet,在Servlet处理完成后,显示注册成功并转向主页。(meta也可实现)
通过response实现请求重定向。 请求重定向指:一个web资源收到客户端请求后,通知客户端去访问另外一个web资源,这称之为请求重定向。 地址栏会变,并发送2次请求,增加服务器负担 实现方式 response.sendRedirect() 同样是发送一个请求给服务器端资源,这个服务器资源会首先给客户端一个响应,客户端再根据这个响应当中所包含的地址,再次向服务器端发送一个请求,也就是说客户端跳转是两次请求,两次响应;
Request常用方法:
获得客户机请求参数(客户端提交的数据)
getParameter(name)方法
getParameterValues(String name)方法
1.各种表单输入项数据的获取 text、password、radio、checkbox、 file、select、textarea、 hidden、 image、button给js编程用 2. 2.请求参数的中文乱码问题 浏览器是什么编码就以什么编码传送数据 解决:告诉服务器要使用什么编码request.setCharacterEncoding(“UTF-8”);//POST有效 只针对post提交
new String(username.getBytes(“ISO-8859-1”),“UTF-8”);//GET方式 超链接:<a href=“/JavaWeb/RequestDemo2?name=中国”>cn</a>//GET方式 更改Tomcat的配置解决URL编码问题:<Connector URIEncoding=“UTF-8”/>
3.request对象实现请求转发:请求转发指一个web资源收到客户端请求后,通知服务器去调用另外一个web资源进行处理。 request对象提供了一个getRequestDispatcher方法,该方法返回一个RequestDispatcher对象,调用这个对象的forward方法可以实现请求转发。 request对象同时也是一个域对象,开发人员通过request对象在实现转发时,把数据通过request对象带给其它web资源处理。 setAttribute方法 getAttribute方法 removeAttribute方法
request和response的区别
request(转发):服务器端跳转;地址栏不发生变化(地址栏是初次发出的请求的地址)
response(重定向):客户端跳转;地址栏发生变化(地址栏为最后发出请求的地址)
request:转发web项目的根目录 response:重定向任何资源
request:/转发web项目的根目录 response:/重定向web应用的根目录
解析Request和Response的更多相关文章
- #HTTP协议学习# (一)request 和response 解析
注:本文转自:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html , 粉字[]内内容为个人笔记 当今web程序的开发技术真是 ...
- 转 #HTTP协议学习# (一)request 和response 解析
http://www.cnblogs.com/bukudekong/p/3834020.html #HTTP协议学习# (一)request 和response 解析 注:本文转自:http:// ...
- Servlet之Request和Response 解析
原理 tomcat服务器会根据请求url中的资源路径,创建对应的Servlet的对象 tomcat服务器.会创建request和response对象,request对象中封装请求消息数据. tomca ...
- request 和response
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等. 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了We ...
- 【转】request和response的页面跳转传参
下面是一位园友的文章: jsp或Servlet都会用到页面跳转,可以用 request.getRequestDispatcher("p3.jsp").forward(request ...
- [Rails] 从 Request 到 Response(2)
本文翻译自:Rails from Request to Response 系列:个人选择了自己感兴趣的部分进行翻译,需要阅读原文的同学请戳前面的链接. 第二部分 路由(Routing) Blog::A ...
- JavaWeb(一)Servlet中的request与response
一.HttpServletRequest概述 1.1.HttpServletRequest简介 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP ...
- 第十五节:HttpContext五大核心对象的使用(Request、Response、Application、Server、Session)
一. 基本认识 1. 简介:HttpContext用于保持单个用户.单个请求的数据,并且数据只在该请求期间保持: 也可以用于保持需要在不同的HttpModules和HttpHandlers之间传递的值 ...
- 简单了解request与response
本文对 request. response 简单描述,未涉及到具体的浏览器缓存.重定向.请求转发等代码部分. 一.Web服务器,浏览器,代理服务器 在看 response.request 对象之前,先 ...
随机推荐
- JDBC_事务说明
JDBC控制事务:1.事务:一个包含多个步骤的业务操作,如果这个业务操作被事务管理则多个步骤同时成功或同时失败2.操作: 1.开启事务 2.提交事务 3.回滚事务3.使用Connection对象来管理 ...
- delphi 还原窗口
1.格局还原procedure TFrmStyleProp.btnNewClick(Sender: TObject); //声明var iniFile : TIniFile; idx : intege ...
- flask 使用hashlib加密
flask 使用hashlib加密 import hashlib #引入hashlib #使用方法: password = ' sha1 = hashlib.sha1() #使用sha1加密方法,你还 ...
- Redis中取出值,转成对象
import com.fasterxml.jackson.databind.ObjectMapper; //转成companyEntity CompanyEntity company = mapper ...
- 树形dp——cf1092F
被傻逼题降智了.. 就是第一次dfs 时 求一次size,一次deep数组 然后第二次dfs时直接求最大值 先把结点1的值求出来, u->v过程中,v子树的所有结点深度-1,v外的所有结点深度+ ...
- SpringCloud及其五大常用组件之Feign、Ribbon和Hystrix
1.Feign 我们已经将Eureka和Zuul开发完毕,而且上面注册了两个微服务,现在我们实现两个微服务之间的调用. String baseUrl = "http://127.0.0.1: ...
- 如何用excel统计调查问卷
如何用excel统计调查问卷 有些人可能经常要对调查问卷进行统计,使用手写的方法(就是在纸上写正字的方法)虽然很方便,不过不方便在一定条件下进行统计,如在男士的条件下,使用诺基亚的手机有多少人.而用e ...
- java在jvm虚拟机中是如何实现多态的?
原文地址:https://blog.csdn.net/huangrunqing/article/details/51996424 众所周知,多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向 ...
- QT之QByteArray
1.拷贝内容到QByteArray 1.使用append函数 //结合结构体的(char*)强制转化使用,command.append((char*)&e2_System_Para_t, si ...
- mint-ui loadmore 上拉加载的坑
<div style="height:100vh;overflow: scroll;"> <mt-loadmore :top-method="loadT ...