精华内容
下载资源
问答
  • js关闭页面删除cookie
    千次阅读
    2022-03-31 14:43:12
        /* 
          cookie  会有一个过期时间,如果不设置过期时间那么关闭页面就会消失,如果想要删除这个cookie的话就要设置一个过期时间,存储大小只有4kb左右
          设置无过期时间: document.cookie = "键=值;"
          设置有过期时间: document.cookie = "键=值;expires=*****"
        */
        //设置cookie
        document.cookie = "age=18;"
        document.cookie = "name=张三;expires=Wed Sep 30 2024 15:13:48 GMT+0800 (中国标准时间)"
    
        //获取cookie
        console.log(document.cookie);  //name=张三; age=18
    
        //删除cookie  删除cookie原理是重新设置cookie过期时间从而实现删除效果
        document.cookie = "age=18;expires=Wed Sep 30 2019 15:13:48 GMT+0800 (中国标准时间)"
        
        console.log(document.cookie);  //name=张三;
    
    更多相关内容
  • 由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静态变量的生命周期是有限的,当发生页面跳转或者页面关闭的时候,...
  • 当然js删除cookie失败的可能原因并不只于此,具体参考以下博文: http://www.cnblogs.com/gossip/archive/2011/12/06/2278282.html 转载于:https://my.oschina.net/u/1756499/blog/295142

    前几天在项目中需要在浏览器关闭时删掉指定的cookie,但当时一时钻入死胡同了,只想着在浏览器关闭时使用js中的onunload或onbeforeunload事件来删除。但当时试了很多种方法,怎么都没法删掉这个cookie。以下为js操作cookie的代码。(摘自网上)

    //取得项名称为offset的cookie值 
    function GetCookieVal (offset)
    {
        var endstr = document.cookie.indexOf (";", offset);
        if (endstr == -1)
        endstr = document.cookie.length;
        return unescape(document.cookie.substring(offset, endstr));
    }
      
    //取得名称为name的cookie值 
    function GetCookie (name) {
        var arg = name + "=";
        var alen = arg.length;
        var clen = document.cookie.length;
        var i = 0;
        while (i < clen)
        {
            var j = i + alen;
            if (document.cookie.substring(i, j) == arg)
            return GetCookieVal (j);
            i = document.cookie.indexOf(" ", i) + 1;
            if (i == 0) break;
        }
        return null;
    }
      
    //删除名称为name的Cookie
    function DeleteCookie (name) 
    {   
        var exp = new Date();
        exp.setTime (exp.getTime() - 1);
        var cval = GetCookie (name);
        document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
    }
      
    //清除COOKIE
    function ClearCookies()
    {
        if(confirm('你确定要清空所有COOKIE吗?'))
        {
            var temp=document.cookie.split(";");
            var ts;
            for (var i=0;;i++)
            {
                if(!temp[i])break;
                ts=temp[i].split("=")[0];
                DeleteCookie(ts);
            }
            alert('COOKIE已清除!');
        }
    }

    后来才猛然想起,如果我在后台添加cookie到响应头时,就不指定过期时间,那么这个cookie就是一个会话型cookie,当浏览器关闭时,这个cookie就会被浏览器自动删除。

    但当时我就想不明白为什么使用js删除就不行,于是就跑到网上去问。终于有大神给出了答案,原来在后台添加cookie时,设置了cookie的HttpOnly属性为true,这样当前cookie就不能通过客户端浏览器的脚本来访问。我后来自己去试了一下,果然如此。当然js删除cookie失败的可能原因并不只于此,具体参考以下博文:http://www.cnblogs.com/gossip/archive/2011/12/06/2278282.html

    转载于:https://my.oschina.net/u/1756499/blog/295142

    展开全文
  • 有时为了我们的信息安全需要删除Cookie,我们该如何做呢?什么是 cookie?Cookie 是在您的计算机上存储在小的文本文件中的数据。当 web 服务器向浏览器发送网页后,连接被关闭,服务器会忘记用户的一切。Cookie 是...

    当web服务器向浏览器发送网页后,连接被关闭,服务器会忘记用户的一切。Cookie是为了解决“如何记住用户信息”而发明的。有时为了我们的信息安全需要删除Cookie,我们该如何做呢?

    39b0078864d792e6e259ac3084ce9671.png

    什么是 cookie?

    Cookie 是在您的计算机上存储在小的文本文件中的数据。

    当 web 服务器向浏览器发送网页后,连接被关闭,服务器会忘记用户的一切。

    Cookie 是为了解决“如何记住用户信息”而发明的:

    ● 当用户访问网页时,他的名字可以存储在 cookie 中。

    ● 下次用户访问该页面时,cookie 会“记住”他的名字。

    Cookie 保存在名称值对中,如:username = Bill Gates

    当浏览器从服务器请求一个网页时,将属于该页的 cookie 添加到该请求中。这样服务器就获得了必要的数据来“记住”用户的信息。

    JavaScript如何删除cookie?

    首先要找到该Cookie对应的Name对应的值,然后使用expire属性设置为过期日期(即任何过去日期)就可删除cookie。

    expire属性将cookie的状态保持到指定的日期和时间内,即声明了表示cookie的活动期间的日期和时间。一旦声明的时间过去,就会自动删除cookie。。document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";

    您应该定义 cookie 路径以确保删除正确的 cookie。

    如果你不指定路径,一些浏览器不会让你删除 cookie。

    找到Cookie有下面方法:function getCookie2(name){

    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));

    if(arr != null)

    return unescape(arr[2]); return null;

    }

    找到后设置为过期,切记设置domain和path,只有这两个参数跟你要删除的参数完全一样才能把它删除掉。function resetNfluent(){

    alert("before=>"+document.cookie);

    var exp = new Date();

    exp.setTime(exp.getTime() - 1);

    var cval=getCookie2('name');

    var lanObj=document.getElementById('lanOption');

    var lanSel=lanObj.value;

    alert(lanSel);

    if(lanSel=='en'){

    alert('let\'s reset nFluent');

    alert('cval=>'+cval);

    if(cval!=null){

    document.cookie="name="+cval+";domain=.example.com;expires="+exp.toGMTString()+";path=/";

    }else{

    document.cookie="name=;domain=.example.com;expires="+exp.toGMTString()+";path=/";

    }

    }else{

    alert('Don\'t need reset nFluent');

    }

    alert("after=>"+document.cookie);

    }

    展开全文
  • JS设置,获取,删除cookie 由于chrome等浏览器存在samesite安全措施,导致传统http页面后端无法设置cookie到前端,所以考虑在返回值中添加cookie值,使用前端js进行cookie的设置,获取和删除功能(实现登陆功能) 1....

    JS设置,获取,删除cookie

    由于chrome等浏览器存在samesite安全措施,导致传统http页面后端无法设置cookie到前端,所以考虑在返回值中添加cookie值,使用前端js进行cookie的设置,获取和删除功能(实现登陆功能)
    1.例子中使用了JQuery.js进行get和post请求,同时进行cookie操作
    2.password为md5后结果,在一定程度上防止密码泄漏
    JS设置cookie

    $(document).ready(function(){
        $("#btn").click(function(){
            // 用text()获取不到数据
            var username = $("#username").val();
            var password = $("#password").val();
            // 获取csrf,提交时加入data
            var csrfToken = $("[name='csrfmiddlewaretoken']").val();
            $.post("/app/log/",{"username": username,"password":password,"csrfmiddlewaretoken":csrfToken},function(data,status){
                if(data.error == 0){
                    // path实现cookie跨域, 若未设置expires则关闭浏览器后cookie失效
                    var time=new Date()
                    time.setTime(time.getTime()+365*24*60*60*1000)
                    document.cookie="id="+data.id+";path=/;expires="+time.toGMTString();
                    document.cookie="username="+data.username+";path=/;expires="+time.toGMTString();
                    document.cookie="password="+data.password+";path=/;expires="+time.toGMTString();
                    document.cookie="nickname="+data.nickname+";path=/;expires="+time.toGMTString();
                    //$.cookie('id',data.id,{path:'/'});
                    // 父页面设置值
                    parent.$("#lt").html("用户:"+data.nickname+"<br>唯一ID:"+data.id);
                    // 父页面退登按钮显示
                    parent.$("#u2").css("display","block");
                    alert('登录成功');
                } else {
                    alert(data.text);
                }
            });
        });
    });
    

    JS获取cookie
    代码参考:https://www.cnblogs.com/wulibo/p/5955187.html

    var id = getCookie("id");
    
    function getCookie(c_name) {
        if (document.cookie.length>0) {
            c_start=document.cookie.indexOf(c_name + "=")
                if (c_start!=-1) {
                    c_start=c_start + c_name.length+1
                    c_end=document.cookie.indexOf(";",c_start)
                    if (c_end==-1) c_end=document.cookie.length
                    return unescape(document.cookie.substring(c_start,c_end))
                }
        }
        return ""
    }
    

    JS删除cookie
    代码参考:https://blog.csdn.net/qq_36470686/article/details/83036534

    $("#u2").click(function () {
            // 删除cookie
            var exp = new Date();
    		exp.setTime (exp.getTime() - 1);
            document.cookie = "id=0; expires="+ exp.toGMTString()+"; path=/";
            document.cookie = "username=0; expires="+ exp.toGMTString()+"; path=/";
            document.cookie = "password=0; expires="+ exp.toGMTString()+"; path=/";
            document.cookie = "nickname=0; expires="+ exp.toGMTString()+"; path=/";
            $("#lt").text("未登录");
            $("button").css({"color":"white"});
            $("#u2").css({"display":"none"});
            alert("退登成功");
        });
    
    展开全文
  • function addCookie(objName, objValue, objHours){//添加cookievar str = objName...if (objHours > 0) {//为0时不设定过期时间,浏览器关闭cookie自动消失var date = newDate();var ms = objHours * 3600 * 1000...
  • Cookie 代表一种小型的文本文件,可以让开发人员在用户计算机上存储少量的数据(大约 4kb),来记录用户的某些信息,例如用户身份、喜好等,当用户下次访问网站时,网站可以通过检索这些信息来为用户展示个性化页面...
  • cookie是运行在客户端的,所以可以用JS来设置cookie.假设有这样一种情况,在某个用例流程中,由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量...
  • JS之——设置cookie 删除cookie

    万次阅读 2016-06-16 12:40:33
    js设置cookie有很多种方法。 第一种:(这个是w3c官网的代码) //设置cookie function setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires...
  • 当web服务器向浏览器发送网页后,连接被关闭,服务器会忘记用户的一切。Cookie是为了解决“如何记住用户信息”而发明的。有时为了我们的信息安全需要清除Cookie,我们该如何做呢?javascript清除cookie的方法:使用...
  • 每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。设置cookie的方法有很多种;比如通过服务器脚本页面进行设置,诸如aps,php等程序脚本。但有时候我们需要在静态页面上设置cookie,这时候我们就需要...
  • Cookie 为 Web 应用程序保存用户相关信息提供了一种...Cookie 是什么鬼Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。用户每次访问站点时,Web 应用程序都可以读取 Cookie 包含的...
  • pc 端的项目,有一个步骤可以在手机上操作,页面都在同一个域名下面,但是pc端需要登录(用到了 cookie ),公众号端不需要登录,不用 cookie ,不清楚后台怎么处理的,只知道这时候如果还携带 cookie 后台总是报错,...
  • 由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静态变量的生命周期是有限的,当发生页面跳转或者页面关闭的时候,...
  • 由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静态变量的生命周期是有限的,当发生页面跳转或者页面关闭的时候,...
  • Cookie实际上是一小段的文本信息(key-value格式)。客户端向服务器发起请求,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时...
  • //关闭所有窗口就是关闭浏览器 function   closeWindow()  {  var   ua=navigator.userAgent  var   ie=navigator.appName== "Microsoft Internet Explorer" ? true : false   ...
  • JavaScript是运行在客户端的脚本,因此...假设有这样一种情况,在某个用例流程中,由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于..
  • 笔者前端小白在做用户退出时,移除cookie里面的个人用户信息,并跳转到登录页面,然而cookie并未及时生效。 后来发现 this.$router.push在页面跳转时并未刷新页面,因而cookie中的内容未及时清除。于是换成 ...
  • jquery 设置cookie,删除cookie,获取cookie 1.按照顺序引入jquery.js 和 jquery cookie插件 <script src="//cdn.bootcss.com/jquery/1.12.4/jquery.js"></script> <script src="//cdn.bootcss....
  • 当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。Cookie 的作用就是用于解决 "如何记录客户端的用户信息"。在 JavaScript 中,修改 cookie 类似于创建 cookie,如下所示:document....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 43,752
精华内容 17,500
热门标签
关键字:

js关闭页面删除cookie