首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cookie头中有cookie但getCookies()中没有cookie?

Cookie头中有cookie但getCookies()中没有cookie?
EN

Stack Overflow用户
提问于 2017-10-12 03:16:46
回答 1查看 15关注 0票数 0

我看到服务器端的cookie出现了一些奇怪的行为,我想知道为什么。

在客户端:

代码语言:javascript
复制
document.cookie = 'test_cookie=' + '[AB]cd|ef-gh[IJ]' + '; path=/;';
document.cookie = 'test_cookie2=' + 'cd|ef-gh' + '; path=/;'; 

在服务器上:

代码语言:javascript
复制
headers = httpServletRequest.getHeaders()
// iterate and print headers

cookies = httpServletRequest.getCookies();
// iterate and print headers

输出:

代码语言:javascript
复制
// Both are there on the header, so tomcat doesn't block it:
...
header: cookie: test_cookie=[AB]cd|ef-gh[IJ]; test_cookie2=cd|ef-gh


// Only one shows up from getCookies()
...
cookie: test_cookie2=cd|ef-gh
// no test_cookie ???

为什么我看不到test_cookie2?我可以在客户端设置之前进行uri编码,但我认为'‘和'’是允许的cookie字符?

有没有更正确的设置方法?

EN

回答 1

Stack Overflow用户

发布于 2017-10-12 04:19:02

下面是在前端正确设置cookie的方法:

代码语言:javascript
复制
document.cookie = 'test_cookie="[AB]cd|ef-gh[IJ]"; path=/';

而不是包含特殊字符的Cookie值两边的双引号。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46695909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档