私たちが作業中のアプリケーションで使用するAPIに送信するために、NSDictionary
をPOST引数文字列に変換するメソッドがあります。 NSString
s、NSDate
s、およびNSArray
sを正しく変換します。それはうまく動作します。POST要求として階層型NSDictionaryを送信する
私の辞書にあるオブジェクトの1つが実際に別の辞書になる可能性があるので、POSTリクエストに関してこれをどのように処理するのかと思いました。あなたは階層的なデータ構造をどのように扱いますか?私は各辞書に対して複数のリクエストを送ることを考えましたが、より良い方法がないかどうかはわかりません。個人的に
POSTリクエストは、データを "application/x-www-form-urlencoded"タイプとして送信する必要がありますか?代わりにJSONを使用できますか? –
私たち自身でAPIをやっているので、私たちはそれを変えることができると思う。基本的には、辞書構造からJSON文字列を生成し、それをPOST引数として追加することです。 – flohei
個人的には、NSDictionary全体を文字列として「JSONify」し、Content-Type:application/jsonをHTTPリクエスト本体としてそれをさらにエンコードせずに送信します。しかし、あなたが示唆したように、値をJSON構造体として変換して引数として送ることができます。 1つの潜在的な欠点は、送信するデータのタイプに応じて多くのエンコード/デコードが必要になることです。 –