如何在 iOS 上通过安全连接流式传输视频
Posted
技术标签:
【中文标题】如何在 iOS 上通过安全连接流式传输视频【英文标题】:How to stream video over secure connection on iOS 【发布时间】:2012-09-04 16:28:17 【问题描述】:我可以从本地资源(在设备上)播放视频。 我可以从不受保护的互联网流式传输视频。 我无法从公司的 Intranet(从内部或外部)流式传输
典型的安全公司网络。视频存储在 SharePoint 2007 列表中(但我有视频文件的 url)。
我试过了:
MPMoviePlayerController MPMoviePlayerViewController UIViewView(使用<video>
标签和视频url动态创建html)
我什么也做不了。哎呀,我什至无法让它直接进入 iPad 上 Safari 中的链接。我唯一没有尝试过的是将其下载为文件然后在本地播放。由于存在许多可用性问题,这不是首选。
【问题讨论】:
【参考方案1】:有 2 个问题。
MPMoviePlayerController
不支持NSURLConnection
中存在的所有质询身份验证。解决方案是在您的安全区域内的某处做一个“虚拟”NSURLConnection
,让它处理所有挑战并将其设置为存储会话信息。从现在开始,MPMoviePlayerController
或其他不支持 SSL 请求的输入和输出的连接将使用现有会话。
必须在服务器上安装有效的中间证书。我自己永远也想不通的东西。它作为一个小项目存在于安全连接下的指南之一中。
【讨论】:
第二个问题,或修复,通过使用中间证书,是回答SSL挑战的解决方案。不是流媒体本身..对吗?我的意思是,您可以通过与使用中间证书不同的方式来回答 SSL 挑战,不是吗? 或许你可以用另一种方式来应对挑战。一旦我有了可以使用的答案,我就停止了挖掘。主要问题是MPMoviePlayerController
没有提供回答挑战的系统。因此,您需要使用其他一些连接来导航挑战并将会话设置为MPMoviePlayerController
不必处理任何问题。只要你做到了,如何清除挑战并不重要。
您介意添加为 MPMoviePlayerController 提供虚拟 NSURLConnection 的代码吗?我有类似的问题,不知道从哪里开始。
伙计们,您有任何示例如何在 MPMoviePlayercontroller 之外对这些挑战进行排序吗?还是有人解决了这个问题?
@nhenrique - 是的。使用NSURLConnection
或NSURLSession
这是一个相当直接且有据可查的过程。在委托协议中查找didReceiveChallenge
方法。以上是关于如何在 iOS 上通过安全连接流式传输视频的主要内容,如果未能解决你的问题,请参考以下文章