我有一个花哨的问题。一些 JavaScript 检查是否可以写入 Cookie。
这是我们的代码:
function logCookieError(){
var noCokkieSet = false;
createCookie('testcookie','testvalue',1);
if(getCookie('testcookie') != 'testvalue'){
noCokkieSet = true;
_log.error("XMPP=NO COOKIES:");
}else{
eraseCookie('testcookie');
}
return noCokkieSet;
}
不幸的是,有时(用 Chrome 测试),我们收到一个错误,但没有任何改变。
那么,编写 Cookie 是否需要一些时间,并且我需要添加一个睡眠,或者其他东西会影响这个测试吗?
问候,
-雷纳
编辑:
我认为,createCookie 和 getCookie 是标准 JavaScript 方法。这是实现:
function createCookie(name,value,days){
if (days){
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}else{
expires = "";
}
document.cookie = name+"="+value+expires+"; path=/";
}
function getCookie(NameOfCookie){
if (document.cookie.length > 0){
begin = document.cookie.indexOf(NameOfCookie+"=");
>-if (begin != -1){
begin += NameOfCookie.length+1;
end = document.cookie.indexOf(";", begin);
if (end == -1) end = document.cookie.length;
return unescape(document.cookie.substring(begin, end));
}
}
return null;
}