2009-08-14 6 views
7

Objective-CでHTTP POSTリクエストとして送信されるJSONペイロードを作成するサンプルコードはありますか? http://code.google.com/p/json-framework/Objective-CでPOST HTTPリクエストのJSONペイロードを生成

任意のサンプルコードをいただければ幸いです:私はからダウンロードしたJSON-フレームワークは使用しています

{__metadata:{\"Uri\":\"/NewLoc/\", 
\"Type\":\"Location.NewLoc\"}, \"LocID\":\"100006\", 
\"latitude\": \"40.123456\", \"longitude\": \"-65.876543\", 
\"VisitDate\": \"\\/Date(1249909200000)\\/\", \"type\": \"S\"} 

:私のようなルックスを生成するために探していますJSONペイロードの例

答えて

17

すでにjsonフレームワークを使用しているので、半分の作業が完了しています。

このフレームワークは、任意のKey-Value Coding互換オブジェクトを取得し、JSONに変換できます。 KVCをサポートしている限り、Core Dataオブジェクト、NSDictionaryオブジェクト、任意のオブジェクトである可能性があります。

さらに、json-frameworkには、JSONRepresentationメッセージを使用してこれらのオブジェクトからJSON文字列を取得できるカテゴリが追加されています。

だから、あなたが書くことができ、あなたはNSDictionaryのを使用していたとします

NSMutableDictionary* jsonObject = [NSMutableDictionary dictionary]; 
NSMutableDictionary* metadata = [NSMutableDictionary dictionary]; 
[metadata setObject:@"NewLoc" forKey:@"Uri"]; 
[metadata setObject:@"Location.NewLoc" forKey:@"Type"]; 
[jsonObject setObject:metadata forKey:@"__metadata"]; 
[jsonObject setObject:@"100006" forKey:@"latitude"]; 
// ... complete the other values 
// 
NSString* jsonString = jsonObject.JSONRepresentation; 
// jsonString now contains your example strings. 
+0

Aviad、それは素晴らしいです。時にはアイデアを得るために短いコードサンプルが必要な場合もあります。それは2時間のデバッグの価値があります。ありがとう! –

+0

@ハムチー:ありがとう、私はちょうど私がその1つの答えのマークを持っていればいいと思う;) –

+1

ああ、私は4月10日に、コメントを入れた直後にした:) –

関連する問題