`
starbhhc
  • 浏览: 655385 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

js保存、获取、删除cookie的方法以及js编码和java解码

 
阅读更多

如果js中的cookie使用escape编码,java中使用 URLDecoder.decode(cookieValue,"utf-8");进行解码..

 

这两天学习、写了些web客户端的js代码,下面总结下分享给大家,主要为js保存、获取cookie和js获取各种类型的控件值的方法:
1、js保存cookie
<script type="javascript">
        function setCookie(name,value){ //name为cookie的名称,value为name值
                var days = 10; //保存天数,可作为参数传进来
                var expires = new Date(); //建立日期变量
                expires.setTime(expires.getTime() + days * 30 * 24 * 60 * 60 * 1000); //expires过期时间 = 当前时间 +过期时间(秒)
                var str = name + ‘=’ + value +’;expires=’ + expires.toGMTString(); //将值及过期时间一起保存至cookie中(需以GMT格式表示的时间字符串)
                //var str = name + ‘=’ + escape(value) +’;expires=’ + expires.toGMTString(); 
                document.cookie = str;

  document.cookie = name+"="+value+";expires="+expdate.toGMTString()+";path=/";

   //即document.cookie= name+"="+value+";path=/";   时间可以不要,但路径(path)必须要填写,因为JS的默认路径是当前页,如果不填,此cookie只在当前页面生效!~

 

        }
</script>
下面为通用版保存cookie
<script language="JavaScript" type="text/javascript"> 
<!– 
function addCookie(name,value,expireHours){ 
         var cookieString=name+"="+escape(value);          
         if(expireHours>0){ //判断是否设置过期时间
                var date=new Date(); 
                date.setTime(date.getTime+expireHours*3600*1000); 
                cookieString=cookieString+"; expire="+date.toGMTString(); 
         } 
         document.cookie=cookieString; 

//–> 
</script> 
蓝色部分解释:
        方法是用escape()函数进行编码,它能将一些特殊符号使用十六进制表示,例如空格将会编码为“20%”,从而可以存储于 cookie值中,而且使用此种方案还可以避免中文乱码的出现。
        例如: 
                document.cookie="str="+escape("I love js"); 
        相当于: 
                document.cookie="str=I%20love%20js"; 
        当使用escape()编码后,在取出值以后需要使用unescape()进行解码才能得到原来的cookie值
2、js获取cookie值
介绍两种方法:
a.常规的循环字符输出方法
function getCookie(name){//name为cookie名称
        var strcookie = document.cookie;//获取cookie字符串
        var arr = strcookie.split(‘;’); //分割cookie
        for(var i = 0;i<arr.length;i++){
                var arrStr = arr.split(‘=’); //对各个cookie进行分割
                if(arrStr[0] == name) return arrStr[1]; //判断是否存在cookie名称为name并输出
        }
        return ""; //返回
}
b.使用unescape获取cookie方法
function getCookie(name){
    var _password = document.getElementById(‘password’);
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); //通过正则表达式获取cookie为name的字符组
    if(arr!=null){
        return unescape(arr[2]); //输入返回
    }
    return ”;
}
3、删除cookie
<script language="JavaScript" type="text/javascript"> 
<!– 
//获取当前时间
var date=new Date(); 
//将date设置为过去的时间 

date.setTime(date.getTime()-10000); 
//将userId这个cookie删除 

document.cookie="userId=828; expire="+date.toGMTString(); 
//–> 
</script> 
<script language="JavaScript" type="text/javascript"> 
<!– 
function deleteCookie(name){ 
          var date=new Date(); 
          date.setTime(date.getTime()-10000); 
          document.cookie=name+"=v; expire="+date.toGMTString(); 

//–> 
</script>

分享到:
评论

相关推荐

    documentCookie的使用

    JavaScript无法直接删除Cookie,但可以通过设置一个过期日期早于当前时间的相同名称的Cookie,达到间接删除的效果,因为浏览器会优先保留有效日期更近的Cookie。 了解并熟练掌握以上知识点,对于进行Java Web开发...

    javascript设置和获取cookie的方法实例详解

    本文将深入讲解如何使用JavaScript设置和获取Cookie。 1. **设置Cookie** 设置Cookie主要通过`document.cookie`属性来实现。下面是一个设置Cookie的函数实例: ```javascript function setCookie(cookieName, ...

    SpringSession同时支持Cookie和header策略

    本文将深入探讨SpringSession如何支持Cookie和header策略,并解析`CookieHeaderHttpSessionStrategy.java`这个文件中的关键概念和技术细节。 首先,我们来看标题提及的“SpringSession同时支持Cookie和header策略”...

    Cookie实现记住密码及解决中文乱码

    在Java中,可以使用HttpServletResponse的`addCookie(Cookie cookie)`方法设置Cookie,同时,对于中文字符,可以使用URLEncoder.encode方法进行编码。在HTML中,可以使用JavaScript的document.cookie属性来获取和...

    jquery字符编码转换[文].pdf

    但在Ajax请求中,由于JavaScript默认使用UTF-8编码发送数据,当这些UTF-8编码的数据被GBK编码的后端接收并尝试解码时,就会产生乱码。 解决这个问题的关键在于如何让Ajax请求在发送时明确告知后端其编码方式,并且...

    cookie机制

    在JavaScript中,通过`document.cookie`属性可以读写Cookie,但通常不推荐直接操作,因为属性值需要正确的编码和解码。 ### 注意事项 虽然Cookie提供了一种方便的方式来跟踪和识别用户,但过度依赖Cookie可能会...

    javascript cookie解码函数(兼容ff)

    总结来说,这个JavaScript函数`URLDecode`是为了在Firefox浏览器下解码Cookie中URL编码的中文字符串而设计的,其工作方式是通过一个包含常见中文字符的数组进行匹配和替换。这个函数可能在处理非标准或不完全符合...

    asp cookie中文Javascript取得中文cookie

    思路:将中文编码改成UTF-8编码格式,传到前台,再用JS将其解码. 具体做法:将设置cookie的相关代码改为: Server.URLEncode(“中文”) 将获取cookie的相关JS代码改为: 代码如下: var tmp=[removed].split(“;”)[0]....

    Cookie的使用及保存中文并用Cookie实现购物车功能

    在本知识点中,我们将详细讨论如何在Java Web应用中使用Cookie保存中文信息以及如何通过Cookie实现一个简单的购物车功能。 首先,要了解Cookie的基本使用方法,它可以通过HTTP响应头在服务器和客户端之间传递。创建...

    解决Cookie读写中文

    从`request.getCookies()`获取Cookie数组后,遍历找到指定名称的Cookie,然后将Cookie值解码为GBK,以便正确显示中文: ```java for (int i = 0; i ; i++) { if (cook[i].getName().equals("BF_Chat")) { return...

    CTool.java

    `CTool.java` 可能会包含管理cookie的方法,如`addCookie(HttpResponse response, String key, String value)` 和 `getCookieValue(HttpRequestBase request, String key)`。 8. **Session管理**: 对于处理Web...

    web编码问题小结.doc

    本文档《web编码问题小结》详细总结了Java开发中可能遇到的各种编码问题及其解决方案,覆盖了数据库、Cookie、静态页面、POST与GET请求等多种场景。 #### 数据库的中文问题 数据库的中文问题主要源于数据库与应用...

    常用javascript

    JavaScript提供了编码和解码的方法,如escape()和unescape()。obj.parentElement和obj.parentNode用于获取对象的父级元素。可以通过TableID.moveRow()方法交换表格中的行。document.all.csss.href="a.css"用于替换...

    网上书店模版JAVA源码

    此外,URL编码和解码也是处理链接时常见的操作。 3. **会员登陆注册**:这部分涉及到用户认证和授权。通常使用session和cookie来跟踪用户状态。用户输入的账号密码通过加密算法(如MD5或SHA)进行存储,保证安全性...

    javascript经典集合

    JavaScript还提供了处理字符串、编码和解码的方法,如`escape()`和`unescape()`。此外,`typeof`操作符用于确定变量的数据类型,例如`typeof($js_libpath) == "undefined"`检查变量是否已定义。 在处理表格时,`...

    学习java开发中的特殊字符.pdf

    不过,现代JavaScript更推荐使用`encodeURIComponent()`和`decodeURIComponent()`来编码和解码URL,因为它们更全面,能正确处理更多字符。 在HTML中,存在一些需要转义的字符,如`&`(`&amp;`)、`(`&lt;`)、`&gt;`...

    Java Servlet和JSP教程.pdf

    ### Java Servlet和JSP教程知识点概览 #### 1. Java Servlet ##### 1.1 Java Servlet概述 - **定义**: Servlet是Java EE平台提供的一个关键组件,它允许开发者创建高性能、灵活且可扩展的Web应用程序。Servlet是...

    javascript针对cookie的基本操作实例详解

    本文将深入探讨如何使用JavaScript进行基本的Cookie操作,包括设置、获取和删除。 首先,我们要了解Cookie的基本结构。每个Cookie由名称、值、过期时间、访问路径、访问域和安全标志等属性组成。JavaScript中没有...

    javascript中cookie对象用法实例分析

    在JavaScript中,Cookie是一种在客户端存储少量数据的技术,主要用于用户状态管理、个性化设置以及轻量级的数据持久化。本文将详细解析Cookie的使用方法及其重要属性。 首先,创建Cookie需要设置其基本属性: 1. *...

    JavaScript笔记

    JavaScript:定义行为和动作 (基于对象和事件驱动的客户端脚本语言;也是一种广泛应用于客户端Web开发的脚本语言) 基于对象:网页中的一切元素都是假象!不需要new,即可直接使用 事件驱动:JavaScript的执行都是...

Global site tag (gtag.js) - Google Analytics