我有一个 WCF Web 服务,一旦调用它就会返回一个 PDF 文档。
我尝试了 3 种传输这些数据的方法,我只想知道什么是我的场景的最佳实践。
方法:
- 将数据作为 HTTP 响应正文中的 byte[ ] 传回,封装在 JSON 中。
- 在 HTTP 响应中将数据作为 base64 字符串传回,封装在 JSON 中。
- 将文件保存并加密到公共文件夹,并将文件名发送回应用程序,然后使用 [NSData initWithDataFromURL:.....fileName.pdf] 等获取文件。
在所有 3 种情况下,当同时下载 5 次以上时,我都会遇到数据损坏。
对于大约230KB的文件,方法 1 返回大小接近850KB的字节数组。对于同一个文件,方法 2 返回一个大约300KB的 base64 字符串。
对于方法 3,我仍在努力加密,但在不加密的情况下,通过线路发送的数据为230KB(与实际文件相同)。
这使得方法 3 似乎是最有效的解决方案,但我不敢相信没有比使用公用文件夹更清洁的解决方案......
您如何将非文本数据从您的服务传递到您的 iOS 应用程序?