2016-02-19 4 views
1

Я пытаюсь напечатать JSON в Swift 2.0 с использованием SwiftyJSON и Alamofireпечать в формате JSON, начиная с массивом с SwiftyJSON

Alamofire.request(.GET, "http://announcement.vassy.net/api/AnnouncementAPI/Get/").responseJSON { (Response) -> Void in 

     //check if result has value 
     if let value = Response.result.value { 

      let json = JSON(value) 

      print(json) 

     } 

    } 

И это отлично работает, но при попытке получить доступ к определенной строке, это происходит:

Alamofire.request(.GET, "http://announcement.vassy.net/api/AnnouncementAPI/Get/").responseJSON { (Response) -> Void in 

     //check if result has value 
     if let value = Response.result.value { 

      let json = JSON(value) 

      print(json["Body"].stringValue) 

     } 

    } 

И это небольшая часть файла JSON я Fetching с сервера:

[ 
    { 
    "InsertDate" : "2016-02-19T05:00:00", 
    "Title" : "Musical Theatre Yearbook Photo", 
    "Body" : "This is a yearbook photo reminder.", 
    "Id" : 34641 
    } 
] 

Я работал над этим некоторое время и ничего не могу понять, моя кишка говорит мне, что JSON в порядке, это именно то, как код пытается его распечатать.

+0

все работает нормально на Postman (или что-то подобное)? – senty

+0

@omar проверить следующий ответ он решит вашу проблему –

ответ

2

Поскольку внешний объект является массивом, вы должны напечатать значение для ключа первого элемента

print(json[0]["Body"].stringValue) 

Или печать все «тела» в массиве

for anItem in json.array { 
    print(anItem["Body"].stringValue) 
} 
+0

Удивительно, что работает! Но я еще один вопрос, как бы я напечатал все строки «Тело» вместе? – omar

+0

Я обновил ответ – vadian

0
Alamofire.request(.GET, "http://announcement.vassy.net/api/AnnouncementAPI/Get/").responseJSON 
{ (Response) -> Void in 

//check if result has value 
if let value = Response.result.value { 

    let json = JSON(value) 

//Do the parsing 
if !json.isEmpty 
{ 
    if let arrData = json.array 
    { 
     for dict in arrData 
     { 

      dict["Id"].int 
      dict["Title"].string 
      dict["Body"].string 
      dict["InsertDate"].string 
      //store this data into object add the object into array 

     } 
    } 
} 
} 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^