Tinderlike检索卡中的Web服务数据

时间:2015-06-11 09:41:35

标签: json web-services swift tinder

我目前正在开发像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。

你有个主意吗?

1 个答案:

答案 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!
     }