iframe中关于cookie的操作
先说结论:
跨站的iframe中,写入对应cookie,需要设置
SameSite=None; Secure
否则无法写入成功
相关细节
跨域和跨站
域名/端口/协议三者相同即为同一个域.
二级域名相同即为同一个站.
参考:https://cloud.tencent.com/developer/article/1751237
SameSite
Strict,Lax,None三个属性用来控制对应cookie何时可以在请求中发送.
默认为Lax:跨站时,部分get请求可以携带cookie.
参考:http://www.ruanyifeng.com/blog/2019/09/cookie-samesite.html
Secure
设置为Secure的cookie,仅在发起https请求时可以携带.
只有https页面可以使用Secure标记写入cookie.
iframe的cookie写入
当iframe和父级页面为同站时,cookie写入正常
当iframe和父级页面为不站时,所有cookie无法写入
当iframe为https且使用SameSite=None; Secure时,才可以写入cookie.
测试页面
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!