3个答案 按时间排序 按投票排序
-
servlet重定向一般采用response.sendRedirect()来处理,要明白其中的细节,还需了解HTTP协议的一些内容,简单点就是要了解HTTP请求报头、HTTP状态码、HTTP响应报头的一些参数。
sendRedirect()简单点就是做了两件事情:
设置HTTP响应报头中的Status为302;
设置HTTP响应报头中的Location值为指定的URL;
简单相当于这样:response.setStatus(302); response.setHeader("Location", "OtherServlet");
浏览器会根据状态码来作出相应的响应;
浏览器对相应的状态码的响应(这里只给出了几个3开头的)是:
302 作为HTTP1.0的标准,以前叫做Moved Temporarily ,现在叫Found. 现在使用只是为了兼容性的处理,response.sendRedirect()的默认Location重定向用的是302.
但是HTTP 1.1 有303 和307作为详细的补充,其实是对302的细化
303:对于POST请求,它表示请求已经被处理,客户端可以接着使用GET方法去请求Location里的URI。
307:对于POST请求,表示请求还没有被处理,客户端应该向Location里的URI重新发起POST请求。
浏览器对302的响应,默认情况下,使用HTTP协议的GET方法提交请求,最初请求的内容(比如 POST 参数)也就丢失了。
所以response.sendRedirect()是不能让浏览器来以post方法提交请求的。
你想在servlet中用post传参数,在浏览器支持HTTP1.1的情况下可以设置状态码为307:response.setStatus(307); response.setHeader("Location", "OtherServlet");
这样浏览器就会向Location里的URI重新发起POST请求。
下班了,回答忘记下班时间了.2011年3月23日 18:33
-
servlet 里面重定向 只能是get方式传参数。
之所有叫重定向就是因为这个。
如果重定向能够post传参的话,那么请求转发就没必要存在了。2011年3月23日 15:42
相关推荐
使用myEclipse + tomcat Servlet的简单例子,包括重定向,Session的简单使用 初学者使用......高手勿入 www.zhuyi123.cn助益信息网经常有新的信息 助益网
主要为大家详细介绍了servlet重定向的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
jsp传参 servlet接收中文乱码问题的解决方法.docx
1. 理解servlet的生命周期 知道什么是servlet:运行在服务器端的一个单实例多线程的服务器端Java应用程序(手动的配置servlet) 2. 熟练掌握通过servlet接受参数信息
SQL传参Servlet翻页.....................
本篇文章主要介绍了Servlet 实现重定向几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
servlet请求转发、请求重定向、请求包含 获取form数据
JSPServlet的重定向技术综述 详细介绍
java servlet请求转发重定向 适合于初学者更好的了解页面跳转和原理
通过网上总结的Servlet的转发与重定向的区别介绍。希望可以帮的上大家
ajax与Servlet,传值Demo,包含ajax传值乱码转换
javaServlet请求转发和重定向.pdf
USerLogin servlet 登录实例探究转发与重定向本质区别
Step10.md:从一个 Servlet 重定向到另一个 - 新 TodoServlet。 Step11.md:第一个 JSTL 标签:使用循环 todos Step12:会话范围和请求范围之间的区别 Step13.md:添加新的待办事项 Step14.md:使用 equals 和 ...
这个是有关JSP-Servlet的重定向技术综述,希望对学习jsp和servlet的人有一些帮助!
用注解的方式定义一个Servlet,就不用在web.xml中配置了。Servlet的访问URL是Servlet的必选属性,可以选择使用urlPatterns或者value定义。 像上面的AnnotationServlet可以描述成@WebServlet(name="Annotation...
我们老师教学演示的servlet例子 从简单到难文件夹有八个demo供初学者学习 servlet01 servlet02 servlet03 servlet04 servlet05 servlet06 servlet07 servlet08 servlet是在服务器上运行的小程序。这个词是在Java ...
Files contained in javax.servlet.jar: META-INF/MANIFEST.MF javax/servlet/http/LocalStrings.properties javax.servlet.http.HttpSessionBindingListener.class javax.servlet....
servlet基础与servlet容器模型
所谓的重定向是将请求重新定个方向转到其他位置。例如,客户端访问AServlet,然后立刻自动访问BServlet。这个过程其实就是重定向。下面通过一张图来了解重定向,如图1-1所示: