• Cookies
    • 实例事件
      • Event: 'changed'
    • 实例方法
      • cookies.get(filter, callback)
      • cookies.set(details, callback)
      • cookies.remove(url, name, callback)
      • cookies.flushStore(callback)

    Cookies

    查询和修改一个会话的cookies

    线程:主线程

    通过Sessioncookies属性来访问Cookies的实例

    例如:

    1. const { session } = require('electron')
    2. // Query all cookies.
    3. session.defaultSession.cookies.get({}, (error, cookies) => {
    4. console.log(error, cookies)
    5. })
    6. // Query all cookies associated with a specific url.
    7. session.defaultSession.cookies.get({ url: 'http://www.github.com' }, (error, cookies) => {
    8. console.log(error, cookies)
    9. })
    10. // Set a cookie with the given cookie data;
    11. // may overwrite equivalent cookies if they exist.
    12. const cookie = { url: 'http://www.github.com', name: 'dummy_name', value: 'dummy' }
    13. session.defaultSession.cookies.set(cookie, (error) => {
    14. if (error) console.error(error)
    15. })

    实例事件

    以下事件会在Cookies实例触发。

    Event: 'changed'

    • event Event
    • cookie Cookie - 变更后的 cookie 值。
    • cause String - cookie 值变动的原因,该变量可能的值为:

      • explicit - cookie 是由消费者的操作直接更改的。
      • overwrite - 一个覆盖原值的插入操作导致的 cookie 被自动删除。
      • expired - cookie 在过期时自动删除。
      • evicted - 在GC(垃圾回收机制)过程中被回收。
      • expired-overwrite - 一个已过期的时间覆写了原cookie 的过期时间。
    • removed Boolean - true表示cookie 已被删掉, 否则为false.
      该事件在cookie 被添加、修改、删除或过期时触发。

    实例方法

    以下方法可以在Cookies实例调用。

    cookies.get(filter, callback)

    • filter Object - 过滤器对象,包含过滤参数

      • urlString (可选) - 检索与 url 关联的 cookie。空意味着检索所有 url 的 cookie。
      • nameString (可选) - 按名称筛选 cookie。
      • domain String (optional) - 检索与域名或者 domain 子域名匹配的cookie。
      • pathString (可选) - 检索路径与 path 匹配的 cookie。
      • secureBoolean (可选) - 通过其Secure 属性筛选 cookie。
      • sessionBoolean (可选) - 筛选出session 内可用或持久性 cookie。
    • callback Function - 回调函数

      • error Error
      • cookies Cookie[] - 返回的cookie 对象数组.
        发送一个请求获取所有匹配 filter 对象条件的cookie,回调函数将在请求结束后以 callback(error, cookies) 的形式被调用。

    cookies.set(details, callback)

    • details Object

      • urlString - 与 cookie 关联的 url。
      • nameString (可选) - cookie 名称。如果省略, 则默认为空。
      • valueString (可选) - cookie 值。如果省略, 则默认为空。
      • domainString (可选) - cookie 的域名。如果省略, 则默认为空。
      • pathString (可选) - cookie 的路径。如果省略, 则默认为空。
      • secureBoolean (可选) - 是否将 cookie 标记为Secure。默认为 false。
      • httpOnlyBoolean (可选) - 是否只将 cookie 标记为 只允许HTTP 访问。默认为 false。
      • expirationDateDouble (可选) - cookie 的到期日期,类型为时间戳,单位为秒。 如果省略, 则 cookie 将成为会话 cookie, 并且不会在会话之间保留。
    • callback Function - 回调函数

      • error Error
        设置一个以details对象为模型的cookie,回调函数将在设置执行后以callback(error)形式被调用。

    cookies.remove(url, name, callback)

    • urlString - 与 cookie 关联的 URL。
    • nameString - cookie 名称。
    • callback Function
      删除与 urlname 相匹配的 cookie, 回调函数将在执行完成时被调用。

    cookies.flushStore(callback)

    • callback Function
      写入所有未写入磁盘的 cookie。