开发者社区> 问答> 正文

netty操作cookie和session遇到问题:报错

刚接触netty,不是很熟,希望高手指点

现在能够正确读取客户端的cookie,代码如下

HttpRequest request = (HttpRequest) e.getMessage();

String value = request.getHeader("Cookie");
System.out.println(value);

但是不能将cookie写入程序,如下代码可能有问题但又不知出在哪了

HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK);
CookieEncoder encoder = new CookieEncoder(true);
encoder.addCookie("name","shenzhen");
String encodedCookie = encoder.encode();
response.setHeader(HttpHeaders.Names.COOKIE, encodedCookie);
response.setHeader("Content-Type", "text/html; charset=UTF-8");
response.setHeader("Content-Length", response.getContent()
  .writerIndex());

channel.write(response);
channel.disconnect();
channel.close();

知道的,请指点呀,都弄了一天了

展开
收起
kun坤 2020-06-07 16:59:56 1520 0
1 条回答
写回答
取消 提交回答
  • netty 没session,需要自己实现,还有写入cookie到客户端应该用HttpHeaders.Names.SET_COOKIE  这个头。
    ######回复 @冬之 : 客户端。。######回复 @hebeijpp : 你那样写是错误的,写入cookie到胡科幻用 response.setHeader(HttpHeaders.Names.SET_COOKIE, encodedCookie); 而不是 response.setHeader(HttpHeaders.Names.COOKIE, encodedCookie);######你看我贴的代码,那里已经设置了放cookie的代码,但是客户端读不出来呀,不知是哪出问题了。######用HTTPLook或者Wireshark或者Firebug查看一下响应头对不对。######我大意了,嗨

    2020-06-07 17:00:01
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载