将身份validation令牌从iOS应用程序发送到Safari

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

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

在Safari中打开NSURLRequest

身份validation令牌保存在共享钥匙串中,Safari可以访问吗?

什么是推荐的解决scheme?

我是否需要使用共享Web凭证 ? 在这种情况下,我相信很多工作要做。 我没有用过

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

当服务器收到令牌时,会自动从Safari中知道用户是谁,继续进行会话。

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

就像是

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

最后决定去webview作为我们的身份validation票是太长的url,感谢您的帮助