如果 cookie 为空则重定向
Redirect if cookie is null
所以我现在正在学习 cookie,并从这个 page on w3schools.com 获得了我的 cookie 代码。
我在 Whosebug 上查找了有关重定向的信息,我试图重定向到此处,但尚未设置 cookie。这将重定向到我服务器上的一个页面以接受 cookie 策略并自定义管理面板主题。
<!-- Javascript BEFORE page loads Starts -->
<script type="text/javascript">
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("Cookie Set: " + user);
} else {
//user = prompt("Please enter your name:","");
if (user != "" && user != null) {
window.location.replace("http://whosebug.com");
}
}
}
</script>
<!-- Javascript BEFORE page loads Starts -->
</head>
<!-- Header Ends -->
<!-- Body Starts -->
<body onload="checkCookie()">
为什么要检查 else
块中的 user!="" && user!= null
?当代码进入此块时,user
变量保证为空。这就是为什么 window.location.replace
没有执行以及它没有重定向的原因。
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;
}
function checkCookie() {
var user=getCookie("username");
if (user != "") {
alert("Cookie Set: " + user);
} else {
//user = prompt("Please enter your name:","");
setCookie("username", "value", 1);
window.location.replace("http://whosebug.com");
}
}
所以我现在正在学习 cookie,并从这个 page on w3schools.com 获得了我的 cookie 代码。
我在 Whosebug 上查找了有关重定向的信息,我试图重定向到此处,但尚未设置 cookie。这将重定向到我服务器上的一个页面以接受 cookie 策略并自定义管理面板主题。
<!-- Javascript BEFORE page loads Starts -->
<script type="text/javascript">
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("Cookie Set: " + user);
} else {
//user = prompt("Please enter your name:","");
if (user != "" && user != null) {
window.location.replace("http://whosebug.com");
}
}
}
</script>
<!-- Javascript BEFORE page loads Starts -->
</head>
<!-- Header Ends -->
<!-- Body Starts -->
<body onload="checkCookie()">
为什么要检查 else
块中的 user!="" && user!= null
?当代码进入此块时,user
变量保证为空。这就是为什么 window.location.replace
没有执行以及它没有重定向的原因。
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;
}
function checkCookie() {
var user=getCookie("username");
if (user != "") {
alert("Cookie Set: " + user);
} else {
//user = prompt("Please enter your name:","");
setCookie("username", "value", 1);
window.location.replace("http://whosebug.com");
}
}