【问题标题】:Accessing data from an API response is iOS app从 API 响应访问数据是 iOS 应用程序
【发布时间】:2014-10-28 17:34:26
【问题描述】:

我正在开发这个 iOS 应用程序,当我调用 API 时,我得到了这种数据集:

{
    "finished_on" = 1414499584;
    id = 4370760;
    ip = "1.1.1.1";
    mode = 1;
    name = asdasdasdasd1;
    remaining = 420;
    score = 0;
    "simulation_block" = 0;
    "simulation_id" = 0;
    "simulation_type" = 0;
    "started_on" = 1414499583;
    status = "-1";
    step = 1;
    total = 5;
}

API 调用使用这个:

AFHTTPRequestOperation *op = [[AFHTTPRequestOperation alloc] initWithRequest:req];
op.responseSerializer = [AFJSONResponseSerializer serializer];
[op setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {

响应来自 [responseObject 描述]。

这一切都在我的应用程序的其他任何地方都有效。那里没问题。出于某种原因,我对如何处理这些数据感到困惑。

谁能告诉我如何访问这些数据的一部分?例如,我想提取“名称”。当我检查 XCode 中的数据时,它告诉我它是一个 NSObject。我已经尝试将其转换为 JSON 字符串和其他方式,但我没有运气。

【问题讨论】:

  • 显示从 API 获取此结果的相关代码。
  • 您说您不知道为什么发布代码会有所帮助。多亏了代码,人们现在知道你在做什么,现在可以为你的问题提供答案。人们现在知道您正在返回 NSDictionary 响应,并且输出只是字典的日志。
  • 现在将有助于展示您如何获得并尝试使用“名称”值,您应该解释这样做的问题。

标签: ios api nsarray nsobject


【解决方案1】:

您正在使用description 指令,该指令输出该对象包含的数据的 NSString 表示。您需要访问返回到responseObject 的对象的实际内容,类似于:

responseObject[@"name"];

...但具体实施取决于 AFNetworking 如何返回您的responseObject

【讨论】:

  • 这正是我所需要的!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-14
  • 1970-01-01
  • 1970-01-01
  • 2012-05-10
  • 2015-11-28
  • 2012-11-20
相关资源
最近更新 更多