this question also from abriza project.

在做文件的upload和download的时候遇到的问题.

The question description:

在文件的上传下载模块,第一次访问过去,upload和download都是没有问题的.

关闭当前页,在此链接过去,问题出现了,当前的userId始终没办法拿得到.因为当前的信息,网页并没有从servlet中拿,而是直接从session中拿的.

所以我upload和download的url就会发生变化了.

ex:....../downloadFile/;jsessionid='123456789'

所以就出现了问题.解决方案:禁用缓存或当前页访问后立即过期

不同种类的页面处理方案如下:

#1.静态页

<meta http-equiv="Pragma" content="no-cache">

#2.asp页 

<%
Response.Buffer=true
Response.CacheControl="no-cache"         禁止代理服务器缓存本页面
Response.Expires=-1000                        让页面立即过期(这儿最好设置一个绝对值较大的负数)
%>

#3.jsp页

<%
if (request.getProtocol().compareTo("HTTP/1.0")==0)
      response.setHeader("Pragma","no-cache");
if (request.getProtocol().compareTo("HTTP/1.1")==0)
      response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires",0);
%>

#4.php页

<?php
    header ("Cache-Control: no-cache, must-revalidate");
    header ("Pragma: no-cache");
?>

 

jack.li

2011.12.29.pm

Abriza project

posted on 2011-12-29 14:37  jack.li  阅读(188)  评论(0编辑  收藏  举报