我目前正在开发像tinder一样的应用程序,它可以从网络服务中检索一些数据。
我已经将我的函数编码为检索像魅力一样工作的数据,并且我还实现了卡模型。
问题是,我不知道如何编码将我的解码json数据放入模型中的事实。
我的代码:
//数据我发送到我的werbservice以检索数据
var post:NSString = "recherche=\(recherche)&category=\(category)&zipCode=\(zipCode)&price=\(price)"
var url:NSURL = NSURL(string:"urlofmywebservice")!
来自网络服务的回复:
[
{
"id": "1",
"title": "bmw",
"price": "500.00",
"description": "330",
"addedDate": "2015-05-18 00:00:00",
"user_id": "1",
"user_name": "CANOVAS",
"user_zipCode": "32767",
"category_id": "1",
"category_label": "VEHICULES",
"subcategory_id": "2",
"subcategory_label": "Motos",
"pictures":"http://cars.axlegeeks.com/sites/default/files/4315/media/images/2014_BMW_Z4_sDrive28i_3790993.jpg"
"bdd": {}
}
]
如果我有一些数据:
let jsonData:NSDictionary = NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers , error: &error) as! NSDictionary
let success:NSInteger = jsonData.valueForKey("success") as! NSInteger
//[jsonData[@"success"] integerValue];
NSLog("Success: %ld", success);
if(success == 1)
{
我打电话给我想要从我的网络服务中提取解码数据的卡片:
let newCard = Model()
newCard.image = UIImage(data: pictures)
newCard.content = jsonData.valueForKey("content") as! NSstring
newCard.desc = jsonData.valueForKey("desc") as! NSstring
self.data.append(newCard)
NSLog("fetch new data")
我已经尝试过像“jsonData.valueForKey(”desc“)这样的东西!NSstring”,但我得到了breackpoint。
你有个主意吗?
答案 0 :(得分:0)
我建议您使用SwiftyJSON和Alamofire进行HTML请求和JSON解码:https://github.com/Alamofire/Alamofire + https://github.com/SwiftyJSON/SwiftyJSON
他们真的是用户友好的。
然后你可以这样做:
Alamofire.request(.GET, url).responseJSON {
(_, _, data, _) in
var json = JSON(data!)
var text = json["text"].string!
}