HTTP的Cookie

Cookie

服务器返回数据时可以通过设置 Set-Cookie 头信息,在浏览器中保存内容。在生效时间内,每次访问同一个域,request头都会带上所有保存的对该域的Cookie。

下一次在对同一个域请求时,会自动带上Cookie的内容。

它是以键值对的形式来保存的。

属性:

  • max-age:设置多长时间过期,单位为s(max-age=10 为10s有效期)
  • expires:设置具体的过期时间,要换算时间格式。
  • Secure:代表此Cookie只在https时发送,http请求不发送
  • HttpOnly:设置之后,无法通过JS中的document.cookie访问Cookie
  • domain:设置一级域名,该一级域名下的二级域名也能获得该Cookie(例如,a.text.com是text.com下的二级域名,一个Cookie设置domain属性为test.com后,a.text.com也能获得到该Cookie)

Session可以使用Cookie来实现某些功能,例如用户登录时将用户名设为Cookie,每次访问request都会携带该用户名。


例如,设置两个Cookie,id为123和abc为345。并且设置abc的Cookie为HttpOnly,domain父域名为 test.com:

response.writeHead(200, {
    'Content-Type' : 'text/html',
    'Set-Cookie' : ['id=123; max-age=10','abc=345; HttpOnly; domain=test.com'] //设置id的cookie,值为123,有效时间为10s
})

你可能感兴趣的:(计算机网络)