0

私の質問はかなり明確だと思いますが、コンテキストを提供するために、コンテストでの審査に使用されたアプリケーションを再構築しています。私たちが対処しようとしている問題の 1 つは、データの破損です。デバイスの 1 つは、サーバーから不良データを受信して​​データ ストアを完全に破損していました (サーバーにすぐにアップロードし、サーバーも破損させました)。明らかな理由から、これは修正が必要なバグです。実用的な「このアプリを再び使用できますか」という観点からも、プログラマーの誇りと評判の観点からもです。

これがどのように発生したかについては、2 つのシナリオがあります。最初のシナリオは、文字エンコーディングの失敗です。データの転送には JSON が使用されているため、無視しても問題ないと思います。また、JSON では特定の文字エンコーディング (UTF-8) の使用が義務付けられています。アプリのバージョン 2.0 には RESTKit を使用する予定なので、(できれば) restkit

2 番目のシナリオは、イベントでの Wi-Fi がひどかったため、私が取り組んでいるものです。可能性は低いと思われますが、結果として得られるデータが JSON 検証に失敗することなく、少なくとも実際の TCP 通信ストリームが危険にさらされる可能性があることを示す証拠があります。

iOS や RestKit が転送中にデータが破損するのを防ぐのに役立つツール (または基本的な、自動的にアクティブ化される機能) を提供するのはどのようなものでしょうか? (私はサーバー コードを制御しているので、必要に応じて API が報告する内容を変更できます)

4

1 に答える 1

0

有効なデータの解析 (コンテンツが標準に準拠している) の上には何もありません。TCP はある程度の保護を提供します。

保護しようとしている場所に応じて、応答にハッシュを追加することを検討して、受信したコンテンツが送信したコンテンツと一致することを確認できます。

SDK の観点からは、KVC 検証があります (RestKit が大きく関係しています)。これにより、マッピング プロセス中に各オブジェクトの各フィールドをチェックし、検証チェックに失敗したオブジェクトをビンに入れることができます。

于 2013-10-23T22:36:04.167 に答える