2011-10-09 15 views
0

私たちが作業中のアプリケーションで使用するAPIに送信するために、NSDictionaryをPOST引数文字列に変換するメソッドがあります。 NSStrings、NSDates、およびNSArraysを正しく変換します。それはうまく動作します。POST要求として階層型NSDictionaryを送信する

私の辞書にあるオブジェクトの1つが実際に別の辞書になる可能性があるので、POSTリクエストに関してこれをどのように処理するのかと思いました。あなたは階層的なデータ構造をどのように扱いますか?私は各辞書に対して複数のリクエストを送ることを考えましたが、より良い方法がないかどうかはわかりません。個人的に

+0

POSTリクエストは、データを "application/x-www-form-urlencoded"タイプとして送信する必要がありますか?代わりにJSONを使用できますか? –

+0

私たち自身でAPIをやっているので、私たちはそれを変えることができると思う。基本的には、辞書構造からJSON文字列を生成し、それをPOST引数として追加することです。 – flohei

+1

個人的には、NSDictionary全体を文字列として「JSONify」し、Content-Type:application/jsonをHTTPリクエスト本体としてそれをさらにエンコードせずに送信します。しかし、あなたが示唆したように、値をJSON構造体として変換して引数として送ることができます。 1つの潜在的な欠点は、送信するデータのタイプに応じて多くのエンコード/デコードが必要になることです。 –

答えて

1

-f

おかげ
、私は文字列として単に「JSONify」全体NSDictionaryのだろうとのContent-TypeでHTTPリクエストのボディとしてそのを送信します。さらに、それをコードすることなく、アプリケーション/ JSON。しかし、あなたが示唆したように、値をJSON構造体として変換して引数として送ることができます。 1つの潜在的な欠点は、送信するデータのタイプに応じて多くのエンコード/デコードが必要になることです。