window.name跨域传值,在safari 11中无法保存

新手上路,请多包涵

1.项目的登录页面和业务页面在同IP下的两个端口,登录后获取用户相关数据需要传递给业务页面,考虑到跨域问题,就打算选用window.name 传递json字符串,url转值领导不太满意就没有使用。使用后也挺满意,最近测试同事在mac上用safari 11.测试的时候,发现值没有传递过来,使用chrome等其他浏览器倒没问题。我在自己虚拟机上的safari 9.版本上使用是没有问题的,其他版本没有测试,特来求教一下,有没有解决方法或者变通方法

//login.html
window.name = JSON.stringify(loginData);
//这里可以打印出window.name
location.href = "http://www.B.com";
//跳转B网页后就获取不到了

希望大神各抒己见,帮忙分析一下,谢谢

阅读 3k
2 个回答
新手上路,请多包涵

这个问题暂时这样解决,safari 11版本使用url传参,幸好其默认是不全部显示url,算是勉强应付一下。希望有好方案的朋友能够继续分享

新手上路,请多包涵

window.name里不可以放敏感数据的,会有泄露风险。 只适合用来传递一些标记位之类的功能

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题