您是否可以从我之前的问题中看到,解析JSON数据时遇到了很多麻烦。经过几天的头痛,我认为最好的方法仍然是使用alamofire / swiftyjson。我还发现alamofire-swiftyjson让一切都很好。
但我不知道如何安装这三个"库"在一起。
我在项目中下载了整个Alamofire包,我在项目中添加了SwiftyJson.swift,最后在我的项目中下载了Alamofire-SwiftyJson。
但是当我用" responseSwiftyJSON"更改我的alamofire请求时我得到一个错误说" "请求"没有会员名称" responseSwiftyJSON
Alamofire.request(.GET, "http://mysiteweb.com/app/data/jsonpersodata.php", parameters: ["username": username]).responseSwiftyJSON { (request, response, data, error)
答案 0 :(得分:11)
将Alamofire和SwiftyJSON添加到项目中。然后,您可以使用Alamofire从服务器请求数据,并使用SwiftyJSON进行序列化。
Alamofire.request(url).responseJSON { response in
guard let data = response.data else {
// No data returned
return
}
let json = JSON(data: data)
print(json)
}
Alamofire.request(.GET, url).validate().responseJSON { response in
switch response.result {
case .Success:
if let jsonData = response.result.value {
let json = JSON(jsonData)
print(json)
}
case .Failure(let error):
print(error)
}
}
Alamofire.request(.GET, "http://api.example.com", parameters: ["username" : username])
.responseJSON { request, response, data, error in
let swiftyJSONObject = JSON(data: data!)
}
请注意,您必须解包data
,因为服务器可能不会返回任何内容。