ios - 如何使用 Alamofire 从 JSON 中提取数据

标签 ios json swift alamofire swifty-json

我这样使用 Alamofire 库:

 Alamofire.request(.POST, "http://www.somesample.com/getData.php", parameters: ["user":"charles"]).responseJSON{jsonData in

var theData = jsonData.result.value

如果我调试打印 theData 变量,它会抛出类似以下内容的内容:

    [
  {
    "userId" : "61",
    "userPicture" : "147884767502.jpg",
    "wasId" : "80",
    "favorite" : "0",
    "message" : "how are you?",
    "username" : "paco",
    "date" : "13\/10\/2015 03:44PM",
    "userPhrase" : "hello"
    "repliesNumber" : 2
  },
  {
    "userId" : "3",
    "userPicture" : "149181897286.jpg",
    "wasId" : "5",
    "favorite" : "0",
    "message" : "let's go!",
    "username" : "loliFlower",
    "date" : "30\/08\/2015 07:48PM",
    "userPhrase" : "ciiiii!",
    "repliesNumber" : 3
  }
]

我通常使用 SwiftyJSON,所以我这样写(即使我使用 for 循环来遍历 SwiftyJSON 生成的数组的每个索引:

var myData = JSON(theData.result.value)

print(myData[0]["username"].stringValue)

但是如果我不想再使用 SwiftyJSON 库怎么办? 执行此操作的 native 方法是什么?

最佳答案

我建议您使用代码生成从 json 响应中创建 native 模型,这将节省您手动解析的时间并减少由于错误键而导致错误的风险,所有元素都可以通过模型属性访问,这将是纯粹的本地模型,并且模型将比检查 key 更有意义。检查http://www.json4swift.com如果您需要进一步帮助从 json 响应启动该对象,请告诉我。 (确保您输入实际的 json 响应,而不是问题中的打印对象)

关于ios - 如何使用 Alamofire 从 JSON 中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33642300/

相关文章:

java - 探针格式化json文件并将其解析为java

swift - 展开字典值 Swift

ios - 解析中的关系/指针是什么样的

ios - 如何在没有 App Store 的情况下将 iOS 应用程序安装到任何设备?

javascript - 如何使用 Javascript 或 jQuery 将输入类型复选框存储到 json 对象中?

在 Swift 中使用 String 的 iOS 8 内存泄漏

ios - 如何防止捏合手势上的 View 超出其父边界 - 快速

iOS 扩展和 cordova : 'Cordova/CDV.h' file not found

ios - 模拟器无法获取位置

javascript - 如何使用 PHP json_encode 输出 JSON 解析兼容的 json? JSON.parse - 由于单转义双引号导致意外的标记 h