首页 前端知识 通过iframe嵌套的不同域名的页面之间处理cookie存储失败的问题——js技能提升

通过iframe嵌套的不同域名的页面之间处理cookie存储失败的问题——js技能提升

2024-08-24 23:08:37 前端知识 前端哥 564 706 我要收藏

最近同事在写mvc的后台管理系统,通过iframe实现不同域名的页面的嵌套。

但是有个问题,就是从父页面打开iframe的子页面时,需要登录子页面,此时需要将子页面登录后的token存储到子页面的cookie中,方便子页面的其他接口可以获取到token,并将token添加到接口的headers中。

但是这就遇到了一个问题:【不同域名iframe嵌套时,】

网上提供的方法比较多的就是通过postmessage的方式来处理:

在这里插入图片描述
这种方法的步骤是:父页面进行子页面的登录操作,拿到cookie后,通过postMessage传递到子页面,并通过document.cookie=xxx的方式存储到子页面中。这样子页面的接口就可以使用cookie.get的方式拿到token了。

如果我这边的操作步骤是:父页面直接iframe嵌套子页面,然后在子页面上进行登录操作。那么上面的postMessage的方式就不成立了。

此时可以通过子页面登录后,存储session的方式来处理。

session与其他存储的区别

在这里插入图片描述
在这里插入图片描述
https://blog.csdn.net/bigcarp/article/details/136249943

最后的实现方式是:通过session的方式来实现嵌套后子页面token的存储,这样就实现了最终的效果了。

经过测试:session和localstorage都是可以i实现的。就cookie不可以。

转载请注明出处或者链接地址:https://www.qianduange.cn//article/16715.html
标签
评论
发布的文章

安装Nodejs后,npm无法使用

2024-11-30 11:11:38

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!