我正在使用Cookie来检查用户是否已登录(使用Devise)。当应用程序嵌入iframe(http://lifeelevated.life/players/),并且我从iPhone 6s访问该页面时,浏览器不会列出任何cookie,并且服务器无法确定谁登录。< / p>
答案 0 :(得分:0)
我确定Safari(不仅仅是iPhone)会遇到此问题。在我的macOS浏览器上使用了cookie,因为我亲自访问了托管iframe的网站。
我通过实施一种技术来解决此问题,该技术检查cookie,然后对从未有过的客户端执行重定向。
https://github.com/vitr/safari-cookie-in-iframe
为澄清起见,当用户访问站点T时,我们会从站点I中检查cookie。如果没有cookie,我们会将其重定向到I上的页面,该页面只是将其重定向回T。然后,他们就可以用I中的iframe加载T,并在加载iframe时将其Cookie发送给I,以确保一致的体验。