将身份验证令牌发送到Safari从iOS App到Safari

时间:2015-10-07 14:57:24

标签: ios authentication safari nsurl openurl

我的应用中有一些网址,用户通过openURL API将用户带到Safari浏览器。 我的目标是从应用程序将身份验证令牌发送到Safari,以便用户将使用此令牌登录。我们的服务器要求将此票证作为标题信息的一部分发送。是否有可能与NSURL一起发送自定义标头?

我已经查看了以下链接,该链接讨论了查询组件,但服务器没有处理它,他们更喜欢不同的解决方案。在外部浏览器中打开URL时,Android有可能发送额外的标题,所以现在每个人都在iOS上: - )。

Open NSURLRequest In Safari

身份验证令牌保存在共享钥匙串中,Safari可以通过哪种方式访问​​它?

推荐的解决方案是什么?

我需要使用Shared Web Credentials吗?我相信在这种情况下需要相当多的工作。我没用过它。

2 个答案:

答案 0 :(得分:2)

我认为你需要在URL的级别上玩。假设您从服务器向应用程序发送一次性令牌,并将其用作您要发送到Safari的URL作为参数。

当服务器收到令牌时,它会自动知道用户是谁,现在从Safari继续它的会话。

您提供的第一个链接解释了这个想法,我认为它可以适合您,但您还需要更新后端以执行此类任务。

这样的东西
UIApplication.sharedApplication().openURL(NSURL(string:"http://www.myWebsite/user?token=\(userToken)")!)

答案 1 :(得分:1)

最后决定使用webview,因为我们的身份验证票太长了,感谢您的帮助