我有一个黑盒子容器。我喜欢黑盒子,他们很好地混淆了事物。在UIWebView中使用自定义URL方案
这个黑盒子是一个加密的zip(有点),里面有一些html文件(这是简短的,没有那么痛苦的解释,版本)。
这些文件需要在UIWebView中显示。现在,简单的方法来解密,解压缩到文件系统,从文件系统加载文件。这很好,除了黑盒子包含秘密的东西,并且不能放置在文件系统中,甚至不是一秒钟,所以,我制作了一个C库,实际上流式传输盒子的内容(直接出盒) 。
现在,我有这种流媒体功能,必须以某种方式使其与UIWebView一起工作。我想到的第一件事是使用UIWebView可以发送请求的迷你本地HTTP服务器。然后,我会自己管理这些请求,并使用我已完成的流式lib返回UIWebView所需的内容。我认为这很有效,但我认为一个迷你HTTP服务器可能会有点矫枉过正。
所以,我想知道,是否有另一种方式干扰UIWebView和文件系统?也许使用自定义模式?像myschema://?每当UIWebView向myschema://myfile.html发出请求时,我都会以某种方式干扰并返回它所需的数据?
这样的想法是否可行?我应该从哪里开始?也许NSURLRequest?
编辑:我发现这个:iPhone SDK: Loading resources from custom URL scheme。然而,听起来不错,浏览器将如何知道请求的大小,类型(xml/binary/xhtml)以及HTTP放入其头部的所有信息?
我唯一不能理解的是,我将如何能够发送回UIWebView有关文件大小,文件类型的数据(使用HTTP时通常进入标题的东西) – Meda
除此之外,您的提议似乎绝对合理! – Meda
您将使用该信息创建一个'NSURLResponse',并使用'-URLProtocol:didReceiveResponse:cacheStoragePolicy:'将其发送到协议客户端('NSURLProtocolClient')。 –