返回启动应用程序的浏览器页面而不刷新

Joe*_*e P 4 iphone objective-c mobile-safari ipad ios

我正在为 iOS 开发一个验证码应用程序,它可以在网站上使用,作为 reCAPTCHA 等验证码的替代品。我有一个使用自定义 URL 架构来启动应用程序的按钮。然后用户证明他们是一个人,现在我想让用户返回到他们所在的页面。

我尝试使用他们提供的 URL 打开浏览器。这将打开用户来自的同一选项卡,但随后刷新页面。用户在单击按钮之前输入表单的任何数据都会在页面刷新之前瞬间看到,并且所有数据都会丢失!

苹果不允许应用程序商店中的应用程序自行关闭,所以我不能简单地退出。

如何在不刷新页面的情况下将用户返回到启动应用程序的浏览器页面,以免丢失表单数据?

预先感谢您的任何帮助。

Joe*_*e P 6

我终于找到了一种方法来做到这一点。如果您将 #anything 附加到已在 Safari 中打开的页面的 URL,它只会返回该页面而无需重新加载!

尽管存在一些异常情况,但这是有道理的。如果页面上有一个与 #anything 匹配的锚点,则它不会像单击带有该锚点的链接那样跳转到页面中的该点。另外,如果已经打开一个与包含 #anything 的 URL 完全匹配的页面,则会重新加载该页面。

所以我的解决方案是调用原始 URL,并附加一个 #random 锚点。

  • 如果有人感兴趣,我可以确认这也适用于瑞典服务 BankID (4认同)