`
zhaolicric
  • 浏览: 146642 次
  • 性别: Icon_minigender_2
  • 来自: 青岛
社区版块
存档分类
最新评论

Cookie Use

阅读更多

  什么是cookies

  大家都知道,浏览器与WEB服务器之间是使用HTTP协议进行通信的,当某个用户发出页面请求时,WEB服 务器只是简单的进行响应,然后就关闭与该用户的连接。因此当一个请求发送到WEB服务器时,无论其是否是第一次来访,服务器都会把它当作第一次来对待,这 样的不好之处可想而知。为了弥补这个缺陷,Netscape开发出了cookie这个有效的工具来保存某个用户的识别信息,因此人们昵称为“小甜饼”。 cookies是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段:Netscape Navigator使用一个名为cookies.txt本地文件保存从所有站点接收的Cookie信息;而IE浏览器把Cookie信息保存在类似于 C:windowscookies的目录下。当用户再次访问某个站点时,服务端将要求浏览器查找并返回先前发送的Cookie信息,来识别这个用户。(不同的系统在不同的目录下)

 

if(ifSave==1){
                    //Cookie中要保存的信息
                     Cookie userNameCookie=new Cookie("userName",userName);
                     Cookie userPassCookie=new Cookie("userPass",userPass);
                     
                     //生命周期
                     userNameCookie.setMaxAge(60 * 60 * 24 * 30);//保存30天
                     userPassCookie.setMaxAge(60 * 60 * 24 * 30);//保存30天
                     
                     response.addCookie(userNameCookie);
                     response.addCookie(userPassCookie);
                }else{

                  //查询
                    Cookie[] cookies = request.getCookies(); 
                    if (cookies != null) { 
                       for (int i = 0; i < cookies.length; i++) { 
                            Cookie c = cookies[i]; 
                            System.out.println(c.getName()+"="+c.getValue()); 
                            c.setMaxAge(0);//设置生命周期为0
                            response.addCookie(c);//再写入才能去掉原来的Cookie值
                       } 
                    } 
                }

 

 

 

 在JSP中,程序是通过cookie.setXXX设置各种属性,用cookie.getXXX读出cookie的属性,现在把Cookie的主要属性,及其方法列于下,供大家参考:

类型 方法名 方法解释
String getComment() 返回cookie中注释,如果没有注释的话将返回空值.
String getDomain() 返回cookie中Cookie适用的域名. 使用getDomain() 方法可以指示浏览器把Cookie返回给同 一域内的其他服务器,而通常Cookie只返回给与发送它的服务器名字完全相同的服务器。注意域名必须以点开始(例如.yesky.com)
int getMaxAge() 返回Cookie过期之前的最大时间,以秒计算。
String getName() 返回Cookie的名字。名字和值是我们始终关心的两个部分,笔者会在后面详细介绍 getName/setName。
String getPath() 返回Cookie适用的路径。如果不指定路径,Cookie将返回给当前页面所在目录及其子目录下 的所有页面。
boolean getSecure() 如果浏览器通过安全协议发送cookies将返回true值,如果浏览器使用标准协议则返回false值。
String getValue() 返回Cookie的值。笔者也将在后面详细介绍getValue/setValue。
int getVersion() 返回Cookie所遵从的协议版本。
void setComment(String purpose) 设置cookie中注释。
void setDomain(String pattern) 设置cookie中Cookie适用的域名
void setMaxAge(int expiry) 以秒计算,设置Cookie过期时间。
void setPath(String uri) 指定Cookie适用的路径。
void setSecure(boolean flag) 指出浏览器使用的安全协议,例如HTTPS或SSL。
void setValue(String newValue) cookie创建后设置一个新的值。
void setVersion(int v) 设置Cookie所遵从的协议版本。
分享到:
评论

相关推荐

    sso-use-cookie单点登录

    总结,"sso-use-cookie"项目通过SpringBoot和Cookie实现了单点登录功能,适合有一定Spring基础的学习者了解SSO的基本原理和实践。通过深入学习和理解这个项目,开发者能够掌握如何在实际项目中应用SSO,提升系统的...

    通过改变浏览器的Cookie切换登录用户.zip_cookie会变化吗_use23n_通过改变浏览器的Cookie切换登录用户

    标题“通过改变浏览器的Cookie切换登录用户”涉及到了一个常见的技术实践,即利用Cookie来管理用户的登录状态。描述指出,这种做法允许用户无需重新输入账号密码验证码即可切换登录用户。这种功能在多账户管理或者...

    use-cookie:使用React Hooks获取,设置,更新和删除Cookie

    @ devhammed / use-cookie 使用React Hooks获取,设置,更新和删除Cookie。 安装 npm install --save @devhammed/use-cookie 用法 import React from 'react' import ReactDOM from 'react-dom' import useCookie ...

    axios中cookie跨域及相关配置示例详解

    本文将详细讲解如何在Axios中配置Cookie跨域以及相关的后端设置。 首先,我们要明确一点:默认情况下,Axios在发起跨域请求时并不会携带Cookie。这是因为浏览器的安全策略限制,为了防止跨站脚本攻击(Cross-Site ...

    前端开源库-universal-cookie-koa

    app.use(cookie()); // 使用示例 app.use(async ctx =&gt; { const cookies = new ctx.cookies; // 获取cookie实例 const value = cookies.get('myCookie'); // 读取cookie if (value) { ctx.body = `Cookie value...

    react-use-cookie-watcher:React钩子以观看浏览器 cookie

    @fcannizzaro/react-use-cookie-watcher React钩子以观看浏览器 cookie安装yarn add @fcannizzaro/react-use-cookie-watcher用法 import React , { Component } from 'react'import { useCookieWatcher , useCookie ...

    一个用于操作cookie的Vue插件使用简单无依赖

    Vue.use(VueCookie);` 2. **设置Cookie**:在Vue组件内,你可以使用`this.$cookie.set('cookieName', 'cookieValue', { expires: 7 });`来设置一个名为'cookieName',值为'cookieValue'的cookie,其中expires参数...

    Cookie实现自动登录

    app.use(session({ secret: 'your-secret-key', // 用于签名的密钥 resave: false, saveUninitialized: false, cookie: { secure: true } // 只在HTTPS下发送 })); app.post('/login', (req, res) =&gt; { // ...

    Express中间件用于保护cookie通过HttpOnly并添加标记检查是否存在

    app.use((req, res, next) =&gt; { // 设置cookie,其中key为cookie的名称,value为cookie的值 res.cookie('myCookie', 'myValue', { httpOnly: true, // 启用HttpOnly secure: process.env.NODE_ENV === '...

    ruby实现github第三方认证

    use Rack::Session::Cookie use OmniAuth::Builder do provider :github, 'b478ae6b31dd730b20d1','89f67d361fb348c959eaafea7e40f6db8b166366' end get '/' do &lt;&lt;-HTML &lt;a href='/auth/github'&gt;Sign in ...

    koa-cookie:用于Koa的Cookie解析器中间件

    use ( cookie ( ) ) ;app . use ( async function ( ctx , next ) { const cookies = ctx . cookie ; /* if cookies sent are of the form: 'name=abc; age=20; token = xyz;' Then ctx.cookie is an object of the...

    Express Cookie的基本使用.zip

    app.use(cookieParser()); ``` 一旦设置了中间件,你就可以在路由处理器中设置和读取Cookie了。以下是如何设置一个Cookie的例子: ```javascript app.get('/set-cookie', (req, res) =&gt; { res.cookie('myCookie',...

    useCookie:一个用于管理无依赖Cookie的React钩子

    npm install react-use-cookie 或者 yarn add react-use-cookie 用法 useCookie import useCookie from 'react-use-cookie' ; export default props =&gt; { const [ userToken , setUserToken ] = useCookie ( '...

    cookieAndsession.zip

    在IT行业中,尤其是在Web开发领域,Cookie和Session是两种非常重要的技术,用于管理用户状态和保持用户会话。本文将详细探讨Cookie与Session的工作原理、优缺点以及它们在Node.js环境中的应用。 **Cookie** Cookie...

    Node.js Express框架GET、POST、COOKIE、上传、数据库等测试实例

    app.use(cookieParser()); app.get('/', function(req, res) { var sessionID = 'uniqueSessionId'; res.cookie('sessionID', sessionID); // 返回响应 }); ``` 读取 Cookie: ```javascript var sessionID = ...

    vue-cli-plugin-cookie::cookie:Vue CLI 34插件,用于处理浏览器cookie

    import和.use()将自动添加到main.js中 vue add cookie 用法示例 获取一个cookie this . $cookie . get ( 'jwt_token' ) 设置一个cookie this . $cookie . set ( 'jwt_token' , 'cookie_data' ) this . $cookie . ...

    socket.io-cookie:用于socket.io的Cookie解析器中间件

    socket.io-cookie 用于socket.io的Cookie解析器中间件 例子 var cookieParser = require ( 'socket.io-cookie' ) ; var server = require ( 'http' ) . Server ( ) ; var io = require ( 'socket.io' ) ( server )...

    Express中cookie例子:实现记录浏览过的城市名称

    app.use(cookieParser()); ``` 现在我们已经准备好了处理Cookie的基础。接下来,我们要实现记录浏览过的城市名称功能。假设每次用户访问一个城市页面,我们都会在Cookie中添加一个城市名称。我们可以创建一个路由来...

    useCookie::cookie:基于js-cookie的React Hook for Cookies:cookie:

    useCookie-React钩基于React Hook for Cookies安装方式npm install @use-hook/use-cookie --save用法import { useCookie } from "@use-hook/use-cookie" ;function App ( ) { const [ name , setName ] = useCookie ...

    koa-cookies:在Koa应用程序中设置和清除Cookie

    在Koa应用程序中设置和清除Cookie。 安装 npm i koa-cookies 用法 // set up your koa server, koa-router, etc. const { clearCookie , setCookie } = require ( 'koa-cookies' ) app . get ( '/foo' , async ( ...

Global site tag (gtag.js) - Google Analytics