HTTPS 协议中,web服务端的java servlet response 设置的Cookie,客户端解析不到?

服务端java,收到其他java客户端发送的https请求,处理完成相应结果时,设置了Cookie值如下:Cookiecookie=newCookie("JSESSION... 服务端java,收到其他java客户端发送的https请求,处理完成相应结果时,设置了Cookie值如下:
Cookie cookie = new Cookie("JSESSIONID", jsessionId);cookie.setMaxAge(20 * 60); //20分钟cookie过期resp.addCookie(cookie);
resp.setContentType("text/xml; charset=UTF-8");resp.setStatus(HttpServletResponse.SC_OK);resp.getWriter().print(response);
本希望对方发来的请求处理结束后,告诉对方一个cookie:jsessionid。但是对方解析的HTTPS包头中,不存在cookie信息。客户端获取cookie的代码:
conn = (HttpsURLConnection) url.openConnection();String cookie = null;Map<String, List<String>> headers = conn.getHeaderFields(); //这里任何时候都没有“Set-Cookie”信息 for (Map.Entry entry : headers.entrySet()) { String k = (String)entry.getKey(); if ("Set-Cookie".equalsIgnoreCase(k)) { //这里就更不可能执行了 for (String v : (List<String>)entry.getValue()) { if ((cookie == null) && (v.indexOf("JSESSIONID") >= 0) && (v.indexOf("Path=/;") >= 0)) { cookie = v; } } } }

目前客户端这边的代码已经固定写法,求高人指点,服务端设置Cookie时还需要注意什么?前提是Https的协议。
展开
 我来答
革羲5V
2013-12-21 · 超过20用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:46.6万
展开全部
还需要在setMaxAge()的后面添加个cookie.setPath("/");这个用来告诉浏览器在浏览哪些路径的时候要是cookie持久化保存.("/")表示的是访问当前工程下的所有webApp都会产生cookie,你也可以自己设置路径。
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式