objective-c - 在 Objective-C 中为 POST HTTP 请求生成 JSON 负载

标签 objective-c json httpwebrequest payload

有没有人有任何示例代码来创建要在 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-framework

任何示例代码将不胜感激。

最佳答案

您已经在使用 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.

关于objective-c - 在 Objective-C 中为 POST HTTP 请求生成 JSON 负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1275883/

相关文章:

go中的json解析

c# - Xamarin 表单 HttpClient 卡住

ios - 通过函数初始化实例变量

objective-c - 没有 UITableView 的 UISearchDisplayController

javascript - 如何从 PHP 后端接收 JSON 对象并将其转换为前端的 JavaScript 数组

c# - 通过什么 .NET 类来代理 HTTP 请求? (并跟踪使用的带宽)

c# - Http Web请求Accept和Expect的区别

objective-c - NSTextView 提取原始文本内容

objective-c - 应用程序 :openURL not triggered

php - 通过 JSON 将 HTML 从 PHP 发送到 javascript