二十一天学通之cookie的路径和域

来源:互联网 发布:linux下mysql配置详解 编辑:程序博客网 时间:2024/05/22 15:23
 cookie的路径和域

本文节选自《21天学通JavaScript》一书
    cookie虽然是由一个网页所创建,但并不只是创建cookie的网页才能读取该cookie。在默认情况下,与创建cookie的网页在同一目录或子目录下的所有网页都可以读取该cookie。但如果在这个目录下还有子目录,要使在子目录中也可以访问,则需要使用path参数设置cookie,语法如下:
document.cookie="name=value; path=cookieDir";
如果要使cookie在整个网站下可用,可以将cookieDir指定为根目录,示例如下:
document.cookie="userId=320; path=/";
上面所说都指的是在同一个目录中的访问,可是要想在不同虚拟目录中访问则要另外想办法来解决这个问题。但是path不能解决在不同域中访问cookie的问题。在默认情况下,只有和设置cookie的网页在同一个Web服务器的网页才能访问该网页创建的cookie。但可以通过domain参数来实现对其的控制,其语法格式如下:
document.cookie="name=value; domain=cookieDomain";
如下面这段代码,就演示了怎样设置cookie路径和域。
01    <script lnguage="javascript">                    //JavaScript代码开始标签
02    function setCookie()                            //自定义函数
03    {
04        var the_name = prompt("请输入要设的cookie的值,"");                                                                        //一个信息框
05        var the_cookie ="cookie_puss=" + escape(the_name) + ";" ;                                                                //编写cookie的键与值
06        var the_cookie = the_cookie+ "path=/;";        //设置cookie的路径
07        var the_cookie = the_cookie + "domain=localhost;";                                                                        //设置cookie的域
08        document.cookie =the_cookie;                //将这些信息写入cookie变量中去
09        alert("设置成功!")                            //最后提示用户设置成功
10    }
11    setCookie();                                    //调用函数
12    </script>

注意:在使用时一定要注意路径的设置方法,若路径信息有误将无法访问。

原创粉丝点击