The*_*ook 12 objective-c ios swift
在我的应用程序中,我有一个屏幕,用户可以单击不同类型的文件来查看和下载它们.但是,只有在用户通过网站登录后才能访问此屏幕.
我使用此方法使用我的URL启动Safari浏览器:
UIApplication.sharedApplication().openURL(NSURL(string: url)!)
Run Code Online (Sandbox Code Playgroud)
但是,用户被重定向到登录屏幕,因为他还没有被授权使用该网站.
我的问题是,如何将cookie或标题传递给Safari并使用这些URL启动URL?
你不能直接这样做。openURL
仅此而已,仅此而已。
您需要在 URL 中传递所需的凭据。目标服务器可以从 URL 读取它们,然后在响应中设置所需的 cookie。
如果您实现了这一点,请确保它不会被滥用来设置任意 cookie 或执行会话固定攻击。安全实现这一点的一种方法是使用一次性标识符:
?key=<that one-time key>