IE下不能调用servlet,Firefox下可以
用tomcat和servlet搭建一个查询数据库的小系统
URL: s?k=value&city=bj
贴一下主要的代码
servlet:
//在IE下控制台不会打印do Get,设断点也不会拦截,Firefox下正常,Myeclipse控制台启动tomcat也没有显示任何不正常信息 public void doGet(HttpServletRequest request,HttpServletResponse response) { System.out.println("do Get"); request.setCharacterEncoding("utf-8"); String k=request.getParameter("k"); String city=request.getParameter("city"); request.setAttribute("city", city); request.getRequestDispatcher("test.jsp").forward(request, response); }
Test.jsp
<body> <%String city=(String)request.getAttribute("city");%> <%=city%> </body> web.xml <servlet> <servlet-name>s</servlet-name> <servlet-class>com.search.servlet.SecServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>s</servlet-name> <url-pattern>/s</url-pattern> </servlet-mapping>
用firefox运行,控制台打印显示也正常,test.jsp的值是正常的,request.setAttribute("city", city);city的值更改后test.jsp中显示的是更改后的值,如果不先用firefox运行,那么IE下就一直保持一个值
刚发现直接用地址栏用url请求,IE会把此请求当作上一次请求,而不进行处理.
有人建议在URL后面加一个时间,这样每次请求的参数都不一样,可以避免这种情况。
可是除了这个办法还有没有其他的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
可以设置你的response的Cache-Control以及Expires等header, 以让浏览器不要缓存你的页面。具体可以看下这个博客: http://blog.csdn.net/afeilxc/article/...
可以设置你的response的Cache-Control以及Expires等header, 以让浏览器不要缓存你的页面。具体可以看下这个博客: http://blog.csdn.net/afeilxc/article/...