జావాస్క్రిప్ట్ కూకీస్

Cookie 让您在网页中存储用户信息。

什么是 cookie?

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

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

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

  • 当用户访问网页时,他的名字可以存储在 cookie 中。
  • 下次用户访问该页面时,cookie 会“记住”他的名字。

Cookie 保存在名称值对中,如:

username = Bill Gates

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

బ్రౌజర్ స్థానిక కుకీ మద్దతను కలిగి లేకపోతే, ఈ ఉదాహరణలు పనిచేయలేవు.

జావాస్క్రిప్ట్ ద్వారా కుకీలను సృష్టించండి

జావాస్క్రిప్ట్ తో మీరు ఈ విధంగా కుకీలను ఉపయోగించవచ్చు: document.cookie స్పందన సృష్టించడం, చదువుట, తొలగించడం కుకీలు.

జావాస్క్రిప్ట్ ద్వారా కుకీలను ఇలా సృష్టించవచ్చు:

document.cookie = "username=Bill Gates";

మీరు ప్రభావవంతమైన తేదీని (UTC సమయం) జోడించవచ్చు. అప్రమేయంగా, బ్రౌజర్ మూసినప్పుడు కుకీలను తొలగిస్తారు:

document.cookie = "username=Bill Gates; expires=Sun, 31 Dec 2017 12:00:00 UTC";

ద్వారా path పారామీటర్స్, మీరు బ్రాఉజర్కు కూకీ ఏ మార్గానికి చెందినది చెప్పవచ్చు. డిఫాల్ట్ పాత్రియోరీ, కూకీ ప్రస్తుత పేజీకి చెందినది.

document.cookie = "username=Bill Gates; expires=Sun, 31 Dec 2017 12:00:00 UTC; path=/";

జావాస్క్రిప్ట్ ద్వారా కూకీని చదివండి

జావాస్క్రిప్ట్ ద్వారా కూకీని చదివించండి:

var x = document.cookie;

document.cookie అన్ని కూకీలను ఒక స్ట్రింగ్ లో తిరిగి పొందవచ్చు, ఉదాహరణకు: cookie1=value; cookie2=value; cookie3=value;

జావాస్క్రిప్ట్ ద్వారా కూకీని మార్చండి

జావాస్క్రిప్ట్ ఉపయోగించి, మీరు కూకీని సృష్టించడం లాగా మార్చవచ్చు:

document.cookie = "username=Steve Jobs; expires=Sun, 31 Dec 2017 12:00:00 UTC; path=/";

పాత కూకీ ముగించబడింది.

జావాస్క్రిప్ట్ ద్వారా కూకీని తొలగించండి

కూకీని తొలగించడం చాలా సులభం.

కూకీని తొలగించడానికి కూకీ విలువను నిర్దేశించకుండా పోయాలి: expires పాస్ట్ తేదీని పరిమాణంగా సెట్ చేయండి:

document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";

మీరు కొరకు కూకీ మార్గాన్ని నిర్దేశించాలి కాబట్టి కొరకు కూకీని తొలగించడానికి సరిపోతుంది.

మీరు మార్గాన్ని నిర్దేశించకపోతే, కొన్ని బ్రాఉజర్లు కూకీని తొలగించకుండా పరిగణించబడదు.

కూకీ స్ట్రింగ్

document.cookie అంతర్జాతిక స్ట్రింగ్ విధంగా కనిపించే అంశం కానీ అది కాదు.

మీరు అయినా వాటిని వ్రాయడానికి ప్రయత్నించితే కూడా document.cookie పూర్తి కూకీ స్ట్రింగ్ వ్రాయండి, మళ్ళీ చదివితే, మీరు కేవలం నామము-విలువ జతను చూడగలరు.

కొత్త కూకీ అమర్చబడితే, పాత కూకీ ముగించబడదు. కొత్త కూకీ డాక్యుమెంట్.కూకీకి జోడించబడుతుంది, కాబట్టి మీరు డాక్యుమెంట్.కూకీని చదివితే, మీరు ఈ విధంగా పొందుతారు:

cookie1 = value; cookie2 = value;
     

మీరు ఒక నిర్దేశిత కుకీ విలువను కనుగొనడానికి కావాలి అయితే, మీరు కుకీ స్ట్రింగ్‌లో కుకీ విలువను శోధించే జావాస్క్రిప్ట్ ఫంక్షన్ రాయాలి.

జావాస్క్రిప్ట్ కుకీ ఉదాహరణ

ఈ ఉదాహరణలో, మేము సందర్శకుని పేరును నిల్వ చేసే కుకీ ఒకదానిని సృష్టించాము.

సందర్శకుడు మొదటిసారి పేజీని సందర్శించినప్పుడు, అతనికి పేరు నమోదు చేయాలని అడిగి, ఆ పేరును కుకీలో నిల్వ చేస్తాము.

మరియు వరుసగా సందర్శకుడు అదే పేజీకి చేరుకున్నప్పుడు, అతనికి స్వాగతం సందేశం అందుతుంది.

ఉదాహరణకు, మేము 3 జావాస్క్రిప్ట్ ఫంక్షన్లను సృష్టించాము:

  1. కుకీ విలువ సెట్ ఫంక్షన్
  2. కుకీ విలువ పొందడానికి ఫంక్షన్
  3. కుకీ విలువ పరిశీలన ఫంక్షన్

కుకీ సెట్ ఫంక్షన్

అప్పుడు, మేము సందర్శకుని పేరును కుకీ వేరియబుల్‌లో నిల్వ చేసే ఫంక్షన్ ఒకదానిని సృష్టించాము:

ఉదాహరణ

function setCookie(cname, cvalue, exdays) {
    var d = new Date();
    d.setTime(d.getTime() + (exdays*24*60*60*1000));
    var expires = "expires="+ d.toUTCString();
    document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
} 

ఉదాహరణ వివరణలు:

ఈ ఫంక్షన్ పారామీటర్స్ కుకీ పేరు (cname), కుకీ విలువ (cvalue), మరియు కుకీ గడువు రోజులు (exdays) ఉన్నాయి.

కుకీ పేరు, కుకీ విలువ మరియు కుకీ గడువు స్ట్రింగ్‌లను జోడించడం ద్వారా, ఈ ఫంక్షన్ కుకీని సెట్ చేస్తుంది.

కుకీ పొందడానికి ఫంక్షన్

అప్పుడు, మేము నిర్దేశిత కుకీ విలువను అందించే ఫంక్షన్ ఒకదానిని సృష్టించాము:

ఉదాహరణ

function getCookie(cname) {
    var name = cname + "=";
    var decodedCookie = decodeURIComponent(document.cookie);
    var ca = decodedCookie.split(';');
    for(var i = 0; i <ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') {
            c = c.substring(1);
         }
         if (c.indexOf(name) == 0) {
            return c.substring(name.length, c.length);
         }
     }
    return "";
} 

ఫంక్షన్ వివరణలు:

కుకీని పారామీటర్ (cname)గా ఉపయోగించండి.

వెర్షన్ (name) మరియు శోధించవలసిన టెక్స్ట్ (CNAME”=”)ను సృష్టించండి.

కుకీ స్ట్రింగ్‌ను డెకోడ్ చేయండి, ప్రత్యేక అక్షరాలు కలిగిన కుకీలను ప్రాసెస్ చేయండి, ఉదాహరణకు “$”.

డాక్యుమెంట్.కుకీలు ను సెకాండ్స్ లో విభజించండి మరియు అవి సంఖ్య లో అని పేరున్న అరేయా లో స్థాపించండి (decodedCookie.split(';'))

కా అరేయా (i = 0; i < ca.length; i++) పరిభ్రమణించండి మరియు ప్రతి విలువను చదవండి c = ca[i].

కుకీ కనుగొనబడితే (c.indexOf(name) == 0), అప్పుడు కుకీ యొక్క విలువను రిటర్న చేస్తుంది (c.substring(name.length, c.length))

కుకీ ఏదీ కనుగొనబడలేకపోతే, రిటర్న "".

కుకీ సంబంధిత ఫంక్షన్ సమీక్ష

కుకీ సెట్ అనే ఫంక్షన్ సృష్టించండి మరియు కుకీ సెట్ అనే ఫంక్షన్ సృష్టించండి.

కుకీలు సెట్ చేయబడినప్పుడు, స్వాగతం చెప్పే పరిశీలనను చూపిస్తుంది.

కుకీలు ఏదీ సెట్ చేయలేదు అయితే, వినియోగదారిని పేరు అడగట్టే పరిశీలనను చూపిస్తుంది మరియు పేరును కుకీలో నిల్వ చేస్తుంది 365 రోజులకు, ఈ విధంగా కాల్ చేస్తుంది: setCookie ఫంక్షన్:

ఉదాహరణ

function checkCookie() {
    var username = getCookie("username");
    if (username != "") {
        alert("Welcome again " + username);
    }
        username = prompt("Please enter your name:", "");
        if (username != "" && username != null) {
            setCookie("username", username, 365);
        }
    }
} 

ఇప్పుడు కలపండి

ఉదాహరణ

function setCookie(cname, cvalue, exdays) {
    var d = new Date();
    d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
    var expires = "expires="+d.toUTCString();
    document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
function getCookie(cname) {
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') {
            c = c.substring(1);
         }
        if (c.indexOf(name)  == 0) {
            return c.substring(name.length, c.length);
         }
    }
    return "";
}
function checkCookie() {
    var user = getCookie("username");
    if (user != "") {
        alert("Welcome again " + user);
    }
        user = prompt("Please enter your name:", "");
        if (user != "" && user != null) {
            setCookie("username", user, 365);
        }
    }
}

స్వయంగా ప్రయత్నించండి

పైని ఉదాహరణ పేజీ లోడ్ అయ్యిన తర్వాత checkCookie() ఫంక్షన్ నడుస్తుంది.