ios – “apple-mobile-web-app-capable”站点在注销后切换到Mobile Safari

ios – “apple-mobile-web-app-capable”站点在注销后切换到Mobile Safari,第1张

概述在iOS全屏模式下运行移动网站时,使用“apple-mobile-web-app-capable”元标记,我使用 AJAX和同步页面请求的组合,包括重定向,在用户登录时成功. 但是,当用户注销并且会话被销毁时,iOS设备将退出全屏模式并在Mobile Safari窗口中打开登录页面. 以下是一系列常见事件: >用户单击主屏幕上的按钮以在iOS中启动移动网站 屏幕模式 >服务器将用户重定向到登录页面 在iOS全屏模式下运行移动网站时,使用“apple-mobile-web-app-capable”元标记,我使用 AJAX和同步页面请求的组合,包括重定向,在用户登录时成功.

但是,当用户注销并且会话被销毁时,iOS设备将退出全屏模式并在Mobile Safari窗口中打开登录页面.

以下是一系列常见事件:

>用户单击主屏幕上的按钮以在iOS中启动移动网站
屏幕模式
>服务器将用户重定向到登录页面进行身份验证(仍在全屏显示)
>用户登录,并重定向回移动房屋(仍在全屏显示)
>用户通过GET和POST执行各种 *** 作,一些使用AJAX,一些不使用(仍在全屏)
>用户点击注销按钮,该按钮会销毁会话并重定向回登录页面
> Mobile Safari窗口将打开,以便第二次呈现登录页面

我在注销成功时尝试了301,302和303重定向,似乎没有任何改变这种行为.它似乎与用户在全屏模式下运行时的会话结束有关.我认为这不重要,但安全机制是通过在Tomcat上运行的Spring Security实现的.

有什么方法可以防止这种行为吗?我不想在注销时使用location.href客户端重定向.

解决方法 您可以使用jquery的事件委派取消链接默认行为,以便为页面上的所有链接分配单个顶级事件处理程序.当检测到点击事件时,我们取消默认行为(即在移动版Safari中打开),然后手动更改窗口的位置.此方法允许在不破坏iPhone独立应用程序体验的情况下更改页面.

http://www.bennadel.com/blog/2302-Preventing-Links-In-Standalone-iPhone-Applications-From-Opening-In-Mobile-Safari.htm

我之前的印象是,任何非AJAX / JavaScript导航都会导致应用程序跳入safari以提供页面服务

总结

以上是内存溢出为你收集整理的ios – “apple-mobile-web-app-capable”站点在注销后切换到Mobile Safari全部内容,希望文章能够帮你解决ios – “apple-mobile-web-app-capable”站点在注销后切换到Mobile Safari所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1064442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存