美文网首页java收集技术文
java 模拟浏览器的cookie管理机制

java 模拟浏览器的cookie管理机制

作者: 春天里的布谷鸟 | 来源:发表于2016-01-07 18:54 被阅读182次

cookie的格式

cookie是一段文本,里面只能包含ascii字符,不能含有逗号和号,也就是说只能包含那128个字符的一些字符,不可能包含例如:‘中国’ 这种汉字

cookie在http请求和响应中的形式

在请求header中是:cookie 首部
在响应中是set-cookie首部

cookie的语法规则

1、数据部分是名值对,k=v
2、控制部分:过期日期、域、路径、端口、版本、安全选项。各个部分用分号分开,不区分大小写

过期日期:max-age:10(秒为单位) 或者 expires=wed,21-dec-2015 11:11:11 gmt,max-age表示最大存活多长时间,过了这个时间浏览器会吧这个cookie删掉,expires超时时间,到了这个时间点会被删掉,max-age是个相对的时间,expires是个绝对的时间点,当这两个同时设置的时候max-age会覆盖expires设置

域: 设置这个cookie在哪个域可以访问到。在默认情况下,如果访问的页面是在 http://web0.com/a/test.jsp
那么这个cookie 就被设在了域web0.com下的/a路径下面,只有访问这个路径下的其他页面才会把cookie同时带到服务器。但是可以改变这个默认的设置,可以设置为其他的路径,这样在其他路径下的页面也可以访问到这个cookie,一般相同域名下,子域子路径可以读到父域父路径下设置的cookie。不能将cookie设置到其他域名中,比如你不能设置一个cookie到 baidu.com 下,这不会有任何效果。
安全选项,secure 指的是这个cookie要不要再https安全连接下传输,默认是false,不需要,如果设为了true,这个cookie必须是在https下才会传输到服务端,否则不会传输。

cookie在java中的表示

  1. CookieHandler 就相当于浏览器中的cookie管理,他可以接受存储cookie,cookie超时了会删掉,但是CookieHandler 只提供了一些api,并没有具体的cookie管理实现,CookieManager是真正的cookie管理实现类
    CookieHandler.setDefault(new CookieManager()) ,可以安装一个默认的cookie管理器。
  2. CookieStore 在正常情况下,浏览器中的cookie都是由服务器设的,但是我们可以在浏览器中用js的方法手动的来对cookie进行CRUD,所以java也提供了类似的管理接口,就是CookieStore,我们可以通过cookiestore来管理cookie,比如在java程序启动的时候手动的设置一些cookie进去,可以将cookie持久化到本地,然后在下次启动程序的时候重新载入到cookiemanager。

相关文章

  • java 模拟浏览器的cookie管理机制

    cookie的格式 cookie是一段文本,里面只能包含ascii字符,不能含有逗号和号,也就是说只能包含那128...

  • JAVA代码模拟获取cookie以及携带cookie

    JAVA代码模拟获取cookie以及携带cookie 去年做android的时候,网络连接没有用类似OKHttp之...

  • java如何获取cookie

    java如何获取cookie Cookie概念:Cookie服务器发送给浏览器的一小段文本信息。 我们可以调用 r...

  • Java 面试整理(二)

    Java-Web 你怎么理解cookie和session,有哪些不同点? 1、cookie数据存放在客户的浏览器上...

  • moco带cookie和headers请求

    moco可以接收带模拟cookie的请求,也可以模拟返回携带cookie的请求添加cookie和headers请求...

  • SpringBoot开发接口

    1、模拟get请求2、模拟get请求返回cookie3、模拟get请求携带cookie信息4、模拟get请求携带参...

  • python27 urllib和urllib2相关方法总结

    1. 网页下载 构造request post get 模拟浏览器 设置代理服务器 2. cookie的相关操作 将...

  • 获取返回URL

    Java设置Cookie Java获取Cookie Js获取Cookie Java方法调用 Js方法调用

  • JAVA服务通过URL下载文件

    概述 如何通过Java发送HTTP请求,通俗点讲,如何通过Java(模拟浏览器)发送HTTP请求。 Java有原生...

  • 15_cookie组件

    cookie 一、cookie cookie 指的是存储在客户端浏览器上的键值对 cookie存在键值对在浏览器上...

网友评论

    本文标题:java 模拟浏览器的cookie管理机制

    本文链接:https://www.haomeiwen.com/subject/qgyfkttx.html