zoukankan      html  css  js  c++  java
  • cookie简介

    我们在浏览器中,经常涉及到数据的交换,比如你登录邮箱,登录一个页面。我们经常会在此时设置30天内记住我,或者自动登录选项。那么它们是怎么记录信息的呢,答案就是今天的主角cookie了,Cookie是由HTTP服务器设置的,保存在浏览器中,但HTTP协议是一种无状态协议,在数据交换完毕后,服务器端和客户端的链接就会关闭,每次交换数据都需要建立新的链接。就像我们去超市买东西,没有积分卡的情况下,我们买完东西之后,超市没有我们的任何消费信息,但我们办了积分卡之后,超市就有了我们的消费信息。cookie就像是积分卡,可以保存积分,商品就是我们的信息,超市的系统就像服务器后台,http协议就是交易的过程。

    简单的保存cookie

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>保存Cookie</title>
        
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
    
      </head>
      
      <body>
       <h1>保存Cookie</h1>
       <%--request  response  session  application  pageContext   config   out  exception                   http://localhost:8080/day11_1/cookie1/a.jsp--%>
       <%
        Cookie cookie1 = new Cookie("aaa","AAA");
           response.addCookie(cookie1);
           
            Cookie cookie2 = new Cookie("bbb","BBB");
           response.addCookie(cookie2);
        %>
      </body>
    </html>

    获取cookie

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'b.jsp' starting page</title>
        
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
    
      </head>
      
      <body>
      <h1>获取Cookie</h1>
      <%
          Cookie[] cookies = request.getCookies();
          if(cookies != null){
          for(Cookie c:cookies){
          out.print(c.getName() + " = " + c.getValue() + "<br />");
          }
          }
       %>
      </body>
    </html>

    删除cookie

        <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'b.jsp' starting page</title>
        
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
    
      </head>
      
      <body>
      <h1>删除cookie</h1>
      <%
          Cookie cookie1 = new Cookie("aaa","AAA");
        cookie1.setMaxAge(0);
           response.addCookie(cookie1);
       %>  
      </body>
    </html>

    setMaxAge(n);设置cookie保存时间    负数或者0页面关闭存储的信息就消失。

  • 相关阅读:
    Linux 下curl模拟Http 的get or post请求
    ShopNC学习笔记(转)
    (转) shopnc数据库操作
    Mysql开发规范
    长连接、短连接、长轮询和WebSocket
    一个支付宝没有安装app时看不到web网页,无法支付的问题
    MVVM设计模式
    c中的scanf和printf
    import和class关键字的区别
    oc中的注释
  • 原文地址:https://www.cnblogs.com/mzdljgz/p/10490390.html
Copyright © 2011-2022 走看看