cookies实例化
答案:2 悬赏:0
解决时间 2021-03-15 08:02
- 提问者网友:霸气大叔
- 2021-03-14 13:35
我在java servlet中对一个Cookie对象实例化时,用汉字表示其cookiename就会报错 Cookie name s a reserved token,换成英语就好了,这是为什么? (首先申明,我在一开始就申明了其相应和请求方式按gb2312编码)
最佳答案
- 二级知识专家网友:一池湖水
- 2021-03-14 15:13
在servlet中创建Cookie必须遵守RFC 2109规范。规范对于cookie name的原文描述如下:The name must conform to RFC 2109. That means it can contain only ASCII alphanumeric characters and cannot contain commas, semicolons, or white space or begin with a $ character. 大致中文含义就是name只能是ascii字符并且不能包含逗号,分号,空格,同时不能以$开头。这是cookie的标准,和你servlet的request/response用什么编码没有任何关系
全部回答
- 1楼网友:甜野猫
- 2021-03-14 16:23
function setcookie(name,value){
var days = 30; //此 cookie 将被保存 30 天
var exp = new date(); //new date("december 31, 9998");
exp.settime(exp.gettime() + days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires="+exp.togmtstring();
}
function getcookie(name){
var arr = document.cookie.match(new regexp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null) return unescape(arr[2]); return null;
}
function delcookie(name){
var exp = new date();
exp.settime(exp.gettime() - 1);
var cval=getcookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.togmtstring();
}
你想要在什么地方操作都可以
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯