2015-02-06 4 views
-1

Я получаю следующее сообщение об ошибке «Не удается преобразовать тип Выражение в„$ T5“напечатать„NSDictionary“» на линии я дать comment.Please help.So, вот кодSwift Convertion данные ошибки

func auctionLatestDefault(completion : (error: NSError?,result : AnyObject?) -> Void){ 
    Alamofire.request(.POST, "http://localhost:8080/xxx/xxx/xx/xxx/").response { 
     (_, _, data, error) in 

     var err : NSError? 

     if error == nil{ 

      var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary //Error 

      var results : NSArray = jsonResult["body"] as NSArray 
     } 

     else{ 
      println("Nothing!") 
     } 
    } 

} 

Это мой JSON, у меня есть изменение Alamofire ответ на "responseJSON"

{ 
    "body" : [ 
    { 
     "id" : "bbXqpjhpGRDUlBd", 
     "priv" : "", 
     "average" : "3606000", 
     "equip" : "", 
     "chassis" : "EXD52D6" 
    } 
} 
+0

Можете ли вы просветить меня с объектом JSON? –

+0

Вы хотите, чтобы вы выбрали «данные»? –

+0

Да, чистая строка JSON. –

ответ

0

Образованные догадка: тип экземпляра data на самом деле NSData? и не NSData

Попробуйте заменить

if error == nil{ 
    var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary //Error 
    var results : NSArray = jsonResult["body"] as NSArray 
} 
else{ 
    println("Nothing!") 
} 

с

if let data = data { 
    var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary //Error 
    var results : NSArray = jsonResult["body"] as NSArray 
} 
else { 
    println("couldn't get data \(error)") 
}