解决浏览器不支持Cookie或者是Cookie功能被关闭的情况

我们只是,在项目的开发中,我们是需要通过Cookie来传递sessionid,为了保证我们在浏览器不支持Cookie或者是Cookie被关闭的情况,我们就使用url参数来传递SessionId

想要通过RUL来传递SessionId,就需要重写URL,HttpServletResponse提供的两种方法:

encodeURL方法,用于对所有的内嵌在Servlet中URL进行重写。

encodeRedirectURL方法,用于对sendRedirect方法使用的URL重写。

输入如下代码:

———————————————————————————————————–

package ynu.sanwen.gagaj2ee;
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class UrlSession extends HttpServlet {

private static final long serialVersionUID = -4255791870665446345L;

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
resp.setContentType(“text/html;charset=utf-8″);
PrintWriter out=resp.getWriter();
RequestDispatcher sessionServlet=getServletContext().getRequestDispatcher(“/findSession”);
sessionServlet.include(req, resp);
//输出被重写的地址
out.println(“<br/> <a href=’”+resp.encodeURL(“findSession”)+”‘>SessionServlet</a>”);
}

}

——————————————————————————————————-

查看效果:

我们禁止浏览的Cookie来看看效果:

共有 0 条评论

Top