1

そこの:

このアプリは JSON を使用してバックエンド サーバーと通信します。そして、時間の経過とともに、API の量は劇的に増加しています。新しい API が追加されるたびに、または既存の API が変更されるたびに、これまでに次のような面倒なプロセスを経る必要があります。

  1. クラス プロパティをクラスに抽象化して、ロジック モデルに適合させます。
  2. リクエスト辞書の構築を実装し、それをシリアライズして送信する
  3. 応答については、それらを逆シリアル化し、応答定義 (スキーマ) を見て、それらを解凍します。

ご想像のとおり、値が再び再帰的な辞書である一部の複雑な API では、非常にエラーが発生しやすく、構築と解析が面倒です...

しばらくして、JSON のコードを作成するソフトウェア Objectify があることがわかりました。応答の解析については、私にとってはうまくいきます(ただし、プロパティを使用して生成されたコードをオブジェクトモデルにマッピングするのに問題がありますが、これは異なります)。しかし、私の要件にはある程度合っています。退屈な作業の半分をなくすことができます。

しかし、私は自分が Objectify に行き詰まっていることに気づきました。私の質問は、iOS の組み込みツールまたは外部ライブラリのいずれかを使用して、「JSON リクエストを自動的に構築する」方法を知っているかどうかです。

Objectify ツールは、JSON データ/スキーマを実際に解析し、一連のプロパティと、データをディクショナリにアンパックする 2 つの関数を含むコードを生成します。しばらく考えた結果、このツールでそれを行うことは不可能だと思います。

既存の方法がない場合 (リクエスト辞書を自動的に認識して構築する方法がないため、非常に難しいと思います。外部レベルと内部レベルに同じキーが存在する可能性があります)。私は現在、プロパティを宣言することを考えており、すべての新しい API と実装者に独自の (Dictionary *)constructRequest メソッドを実装するよう強制しています。

以前にこの問題に直面した人はいますか?何か提案はありますか?

前もって感謝します!

4

1 に答える 1