cookie

作者: 一位有礼貌的先生 | 来源:发表于2018-02-01 23:16 被阅读0次

key

value

expires

  • 过期时间

domain

  • 主域,不可以跨主域设置cookie,不过可以通过一些技术手段让,让需要被跨的那个站,配合一下进行实现,请继续往下看,下面有个解决方案1,可以让你做到跨域设置cookie

path

  • 路径建议设置为/,这样就可以在别的路径下也可以读写

httponly

  • 后端用这个属性设置cookie,前端用js无法读取被后端设置的cookie

跨域

跨域访问,简单来说就是 A 网站的 javascript 代码试图访问 C网站,包括提交内容和获取内容。由于安全原因,跨域访问是被各大浏览器所默认禁止的。跨域是浏览器的限制。

那么问题来了, 例如我当前在访问A站点,因为我等会儿要跳到C站点去登陆,但是我想知道我登陆前做了什么

  • 解决方案1 - 已实践,此方案行得通
    • 把这些信息记录到C站点的cookie上,这时候就需要跨域设置cookie
    • 首先,我需要和C站点的后端配合,在他那边要有一个页面setCookie.html,负责接收postMessage传递过去的消息,并设置cookie
    • 其次,我当前站点有个隐藏的iframe,iframe的scr是C站点里的setCookie.html,当我执行一些操作想要记录的时候,我就通过这个iframe去postMessage一些信息过去,对方负责接收并设置cookie,就可以达到跨域设置cookie的效果了
  • 解决方案2 - 未实践,按理说行的通
    • 当我执行一些操作想要记录的时候,我就直接打C站的接口,让C站自行记录,但是这个接口要允许跨域,其实不允许跨域也没关系,毕竟我的消息是能传过去的,跨域导致的问题只是收到响应不能使用罢了
  • 解决方案2 - 未实践,按理说行的通
    • 当我执行一些操作想要记录的时候,我就直接打A站的接口,让A站的后端,通过服务端通信把数据带给C站的后端,当然这就是他们两个后端的事了,但是无论哪一种方案,都少不了你前端,看把你厉害的,先自行得瑟一会儿把

相关文章

网友评论

      本文标题:cookie

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