求一段JS代码实时检测Cookies

求一段JS代码实时检测Cookies,第1张

使用js检测Cookie的话,可以让js执行定时任务,定期检测,我给你写段代码

方法一://使用jquery的cookie方法,之前必须引入jquerycookiejs文件,在网上可以下载到

//每隔1秒,执行cookie检测函数

setTimeout("checkCookie()",1000);

//检测cookie函数,如果cookie为空则跳转到登陆页

function checkCookie() {

   if($cookie("qqlogin") == "" || $cookie("qqlogin") == null) {

        windowlocationhref = "loginhtml";

   }

}

方法二:使用js获取cookie

//定义一个函数,用来读取特定的cookie值

function getCookie(cookie_name) {

    var allcookies = documentcookie;

    var cookie_pos = allcookiesindexOf(cookie_name);   //要获取COOKIE的索引长度  

    

    //如果找到了索引,就代表cookie存在,

    //反之,就说明不存在。  

    if (cookie_pos == '') {

       windowlocationhref = "loginhtml";

    }

}  

// 调用函数

//每隔1秒,执行cookie检测函数

setTimeout("getCookie('getCookie')",1000);

注:方法二未经测试。

Cookie可以用火狐浏览器、谷歌浏览器,也可以用一些软件的内置模块等获取。具体 *** 作步骤如下:

1、用浏览器打开网页,有写站需要获取登录后的COOKIE的话就登录一下。

2、用鼠标在页面右键,选择“检查”来调用出COOKIE获取界面;在网页右键点选“检查”,或者快捷键Ctrl+Shift+I,或者直接按F12打开“检查”页面。

3、在检查页面选择“Network”(网络)标签,打开过滤器。

4、过滤器是开启状态的时候,下面会多出一行审查元素,之后刷新页面,快捷键F5可以直接刷新。

5、往下拉可以找到“Cookie”字样的字段。Cookie冒号后边的一整段即是Cookie了。可以鼠标拖拽选择进行复制。

Cookie注意事项:

Cookie是登陆账号的重要信息,不能随意发给别人,否则泄漏后你就成了别人的资料仓库保管员了。当然,万一泄露也不要紧,及时将账号的密码进行修改即可,这样泄露的cookie也会失效的。

百度网盘账号的cookie是长期有效的,但是前提条件是不能通过浏览器直接点击退出账号,否则这个获取到的cookie信息就不能再次使用了。需要通过浏览器直接提供的工具,清理cookie信息来退出当前账号。

搜狗浏览器的工具栏中有个清理历史记录,清除cookie的可以。Chrome浏览器中点击小锁后会出现cookie信息,删除即可。

<!DOCTYPE HTML>

<html lang="en-US">

<head>

<meta charset="UTF-8">

<meta name="keywords" content="浏览器,函数,定义,方法,账号">

<title>白菜编辑部</title>

<style type="text/css">

</style>

<script type="text/javascript">

    function readCookie (name)

    {

        var cookieValue = "";

        var search = name + "=";

        if (documentcookielength > 0)

        {

            offset = documentcookieindexOf (search);

            if (offset != -1)

            {

                offset += searchlength;

                end = documentcookieindexOf (";", offset);

                if (end == -1)

                    end = documentcookielength;

                cookieValue = unescape (documentcookiesubstring (offset, end))

            }

        }

        return cookieValue;

    }

    function writeCookie (name, value, hours)

    {

        var expire = "";

        if (hours != null)

        {

            expire = new Date ((new Date ())getTime () + hours  3600000);

            expire = "; expires=" + expiretoGMTString ();

        }

        documentcookie = name + "=" + escape (value) + expire;

    }

     

    writeCookie ("myCookie", "my name", 24);

    alert (readCookie ("myCookie"));

</script>

</head>

<body>

</body>

</html>

cookie在jquery中有指定的cookie *** 作类,下面我先来介绍我们在使用cookie *** 作类时的一些问题,然后介绍正确的使用方法。

使用JQuery *** 作cookie时 发生取的值不正确的问题:

结果发现cookie有四个不同的属性:

名称,内容,域,路径。

get(cookie){

    let  cookieValue=null;

    let  cookies=documentcookiesplit(';');

    for(var i=0;i<cookieslength;i++){

          let cookie=cookies[i]trim();去掉前后的空格

          if(cookiesubstring(0,namelength+1)==(name+'=')){

              cookieValue=decodeURICompoent(cookiesubstring(namelength+1));

              break

          }

      }

    return cookieValue;

  }、

想法很好,不过很不安全,极容易被攻击,用户资料容易被盗。

一般建议cookie只存贮用户名,密码还得自己输。

function getCookie(name)//取cookies函数

{

var arr = documentcookiematch(new RegExp("(^| )"+name+"=([^;])(;|$)"));

if(arr != null) return unescape(arr[2]); return null;

}

这里的SetCookie 是自己定义的一个函数

如:

function setCookie(name, value, expire) {

windowdocumentcookie = name + "=" + escape(value) + ((expire == null) "" : ("; expires=" + expiretoGMTString()));

}

所以里面的这些参数都是直接定义的JS只有windowdocumentcookie 定义cookie的方法至于里面的值 直接定义

以上就是关于求一段JS代码实时检测Cookies全部的内容,包括:求一段JS代码实时检测Cookies、cookie怎么获取、js 如果cookie存了有很多值 怎样读取自己想要的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9646612.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存