有没有人有任何示例代码来创建在Objective-C中作为HTTP POST请求发送的JSON有效负载?我想要生成的json有效负载的示例如下:
{__metadata:{\"Uri\":\"/NewLoc/\",
\"Type\":\"Location.NewLoc\"}, \"LocID\":\"100006\",
\"latitude\": \"40.123456\", \"longitude\": \"-65.876543\",
\"VisitDate\": \"\\/Date(1249909200000)\\/\", \"type\": \"S\"}
我正在使用从http://code.google.com/p/json-framework/
下载的json框架非常感谢任何示例代码。
答案 0 :(得分:18)
你已经在使用json框架了,所以完成了一半的工作。
此框架可以使用任何与键值编码兼容的对象并将其转换为JSON。它可以是Core Data对象,NSDictionary对象,也可以是任意对象,只要它支持KVC。
此外,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.