由奇葩cookie导致服务器500来认识cookie

问题:cookie中文会导致服务器报500错误。

一:cookie的特点

1.以键值对的形式出现的,比如:a=b;b=c

2.中文的值需要转义

cookie的例子

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<head>
<script>
function setCookie(cname,cvalue,exdays){
    var d = new Date();
    d.setTime(d.getTime()+(exdays*24*60*60*1000));
    var expires = "expires="+d.toGMTString();
    document.cookie = cname+"="+cvalue+"; "+expires;
}
function getCookie(cname){
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0; i<ca.length; i++) {
        var c = ca[i].trim();
        if (c.indexOf(name)==0) { return c.substring(name.length,c.length); }
    }
    return "";
}
function checkCookie(){
    var user=getCookie("username");
    if (user!=""){
        alert("欢迎 " + user + " 再次访问");
    }
    else {
        user = prompt("请输入你的名字:","");
          if (user!="" && user!=null){
            setCookie("username",user,30);
        }
    }
}
</script>
</head>
    
<body onload="checkCookie()"></body>
    
</html>

如何在浏览器中查看cookie呢:

 1.解释一下Preserve log :保留请求日志,跳转页面的时候勾选上,可以看到跳转前的请求

 2.Offline可以查看发起起来的参数,但是不会真正的向服务器发起起来。

 3.Filter  过滤请求

妈耶,这篇写cookie的文章实在是太好了,手动收藏一下:https://blog.csdn.net/chenxueshanblog/article/details/54613665

原文地址:https://www.cnblogs.com/DZzzz/p/11069303.html