以json对象作为输入参数而不是NSDictionary来调用API是一个好习惯。

时间:2016-06-26 08:06:35

标签: objective-c json api nsdictionary

使用json对象作为输入参数而不是NSDictionary来调用API是一个好习惯。

通常我们习惯将NSDictionary作为输入参数发送。 移动设备或服务器端是否存在任何问题或性能改进

1 个答案:

答案 0 :(得分:2)

是的,最好采用Objective-C NSDictionary,使用NSJSONSerialization将其转换为JSON(或使用可以为您执行此操作的AFNetworking等库)并发送调用Web服务时发送的网络请求中的JSON。您通常不会发送NSDictionary本身(例如plist或keyed archiver)。 JSON是Web服务的通用语言。 (XML是另一种非常常见的格式,虽然JSON在iOS方面更容易,恕我直言。)

如果您自己构建网络请求(例如,使用NSMutableURLRequest构建NSURLSession),请记住:

  • HTTPMethod设为@"POST";
  • HTTPBody设置为JSON;
  • Content-Type HTTP标头设置为application/json;和
  • 设置Accept HHTP标头,以指示您期望响应的格式(也可能是application/json)。