REST и swift, сущности равны нулю

#xml #swift

#xml #swift

Вопрос:

Итак, у меня есть следующий XML-файл здесь, из которого я хочу получить информацию и отобразить ее в своем приложении.

Я создал следующий код:

 class Parsexml: NSObject {


var address: String?
var category: String?
var city: String?
var name: String?

override init()
{
}

init(address: String, category: String, city: String, name: String){
    self.address = address
    self.category = category
    self.city = city
    self.name = name
}
    override var description: String {
    return "address: (address), category: (category), city: (city), name: (name)"
    }
}

protocol HomeModelProtocal: class {
func itemsdownloaded(items:NSArray)
}

class HomeModel: NSObject, URLSessionDataDelegate {
weak var delegate: HomeModelProtocal!

var data: NSMutableData = NSMutableData()

let urlpath: String = "http://bkrt.dk/api/place"
}
  

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

Однако все мои конструкторы равны нулю.

Чего мне не хватает?

Ответ №1:

Это файл json, а не xml. Вы могли бы сделать что-то вроде этого:

 if let data = NSData(contentsOfURL: NSURL(string: "http://www.bkrt.dk/api/place")!) {
   let json = try NSJSONSerialization.JSONObjectWithData(data, options:.AllowFragments)
   if let items = json as? [AnyObject] {
      for item in items {
         print(item)
         // init ur object
      }
   }
}
  

Также вы могли бы использовать стороннюю библиотеку для синтаксического анализа json.

Комментарии:

1. Хотя вы правы. Но я изменил вывод в моем веб-отеле на Json, потому что я не мог заставить swift отправлять запрос на возврат с веб-сайта в формате json.