0

我认为我的问题很清楚,但为了提供上下文,我正在重新构建一个用于在比赛中评判的应用程序。我们试图解决的问题之一是数据损坏。其中一台设备的数据存储因从服务器接收到错误数据而完全损坏(它立即将其上传回服务器,也损坏了服务器)。出于显而易见的原因,这是一个需要修复的错误——无论是从实际的“我们可以再次使用这个应用程序”的角度还是从程序员的自豪感和声誉的角度来看。

有两种情况可能会发生这种情况。第一种情况是字符编码失败,我想我可以放心地忽略它,因为 JSON 用于传输数据——而 JSON 要求使用特定的字符编码 (UTF-8)。我打算将 RESTKit 用于应用程序的 2.0 版,所以(希望)restkit

第二种情况是我正在努力解决的情况,因为活动中的 Wi-Fi太糟糕了。虽然看起来不太可能,但有证据表明,实际的 TCP 通信流至少有可能受到损害,而不会导致结果数据无法通过 JSON 验证。

所有这些都让我想问 iOS 和/或 RestKit 提供了哪些工具(或底层的、自动激活的功能)来帮助防止数据在传输过程中被损坏?(由于我控制服务器代码,如果需要,我可以更改 API 报告的内容)

4

1 回答 1

0

在有效数据的解析之上(内容符合标准),什么都没有。TCP 提供了一些保护。

根据您尝试保护的位置,您可以考虑在响应中添加哈希值,以便验证接收到的内容是否与发送的内容匹配。

从 SDK 的角度来看,您有 KVC 验证(RestKit 与此密切相关)。这允许您在映射过程中检查每个对象的每个字段,并对未通过验证检查的任何对象进行分类。

于 2013-10-23T22:36:04.167 回答