实验报告——Cookie及其应用操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
陕西国际商贸学院
信息与工程学院《Web应用开发技术》实验报告
实验名称:Cookie及其应用操作
班级:信管B1201班
学生姓名:***
实验地点:1S501实验室
日期:2015年4月24日
1.实验内容
Cookie是客户访问Web服务器时,服务器在客户硬盘上存放的信息,好像是服务器送给客户的“点心”。Cookie实际上是一小段文本信息,客户以后访问同一个Web服务器时浏览器会把它们原样发送给服务器。
2.实验目的
a:向客户发送Cookie对象
b:从客户端读取Cookie
c:用Cookie实现自动登录
3.实验要求
a:要把Cookie发送到客户端,Servlet先要使用Cookie类的构造方法创建一个Cookie对象,通过setXXX()设置各种属性,通过响应对象的addCookie(cookie)把Cookie加入响应头。
b:要从客户端读入Cookie,Servlet应该调用请求对象的getCookies(),该方法返回一个Cookie对象的数组。大多数情况下,只需要用循环访问该数组的各个元素寻找指定名字的Cookie,然后对该Cookie调用getValue()取得与指定名字关联的值。
c:当用户第一次登录网站,服务器将用户名和密码以Cookie的形式发送到客户端。当客户之后再次访问该网站时,浏览器自动将Cookie文件中的用户名和密码随请求一起发送到服务器,服务器从Cookie中取出用户名和密码并且通过验证,这样客户不必再次输入用户名和密码登录网站。
4.算法分析
a:创建一个Cookie对象:
Cookie userCookie = new Cookie(“username”,”hacker”);
将userCookie对象的最大存活时间设置为一个星期:
userCookie.setMaxAge(60*60*24*7);
向客户发送Cookie对象:
response.addCookie(userCookie);
b:调用请求对象的getCookies()方法:
Cookie[] cookies=request.getCookies();
c:GET方法首次访问请求中不包含Cookie,该Servlet将响应重定向到login.jsp页面。当输入正确的用户名和口令,且选中“自动登录”复选框,单击“提交”按钮,将发送POST请求由CheckUserServlet的doPost()处理。之后再发送GET请求,Servlet将从Cookie中检索出用户名和口令,并对其验证。
5.部分程序清单
a:SendCookieServlet.java
public class SendCookieServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
Cookie userCookie=new Cookie("username","hacker");
userCookie.setMaxAge(60*60*24*7);
response.addCookie(userCookie);
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("
out.println("
已向浏览器发送一个Cookie
");out.println("