Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在本地主机上创建cookie_Javascript_Cookies_Localhost - Fatal编程技术网

Javascript 在本地主机上创建cookie

Javascript 在本地主机上创建cookie,javascript,cookies,localhost,Javascript,Cookies,Localhost,我正在寻找一种用javascript在本地主机上创建/检测cookie的方法。基本上,如果会话中存在具有指定名称“foo”的cookie,则不执行任何操作。如果不存在cookie,则创建一个名为foo的新cookie,并用guid填充它。如何在javascript中实现这一点 谢谢从javascript读取cookies需要一些字符串解析。有许多好的库可以使这项任务更容易,但是您可以使用类似于以下的代码来获取和设置cookie值 <script type="text/javascript"

我正在寻找一种用javascript在本地主机上创建/检测cookie的方法。基本上,如果会话中存在具有指定名称“foo”的cookie,则不执行任何操作。如果不存在cookie,则创建一个名为foo的新cookie,并用guid填充它。如何在javascript中实现这一点


谢谢

从javascript读取cookies需要一些字符串解析。有许多好的库可以使这项任务更容易,但是您可以使用类似于以下的代码来获取和设置cookie值

<script type="text/javascript">
    function GetCookieValue(key) {
        var value = null;
        var cookieArray = document.cookie.split(';');
        for (var i = 0; i < cookieArray.length; i++) {
            var keyValuePair = cookieArray[i].split("=");
            if (keyValuePair[0] == key) {
                value = keyValuePair[1];
                break;
            }
        }
        return value;
    }

    function SetCookieValue(key, value) {
        document.cookie = key + "=" + value;
    }
</script>

函数GetCookieValue(键){
var值=null;
var cookieArray=document.cookie.split(“;”);
对于(var i=0;i
在javascript中生成Guid有点困难。有一个很好的库,你可以包括它来生成好的guid。我知道也有一些jQuery插件是出于类似的目的创建的,但我没有使用它们

如果您包括以下脚本以及上面的函数,那么它应该执行您想要的操作

<script type="text/javascript" src="http://www.broofa.com/Tools/Math.uuid.js"></script>
<script type="text/javascript">
    var guid = GetCookieValue("myGuid");
    if (guid == null)
        SetCookieValue("myGuid", Math.uuid());

    alert(GetCookieValue("myGuid"));
</script>

var guid=GetCookieValue(“myGuid”);
如果(guid==null)
SetCookieValue(“myGuid”,Math.uuid());
警报(GetCookieValue(“myGuid”);

document.cookie的问题在于我的本地主机页上没有设置cookie。相反,我正在调用一个外部域,该域设置了我要检查的cookie。所以我实际上是在调用一个域,比如google.com,它将cookie设置在自己的域下。当我在ff中查看Cookie列表时可以看到这一点。cookie设置在google.com下(例如)。我想检查它是否存在,或者JavaScript不允许您从其他域访问cookie。这是一种安全风险。