Я пытаюсь передать данные с моего веб-сервера rails в быстрое приложение с JSON. Я изо всех сил пытаюсь установить эту связь.Rails JSON to Swift 2 JSON
От контроллера Rails:
...
output = x.to_json
render :json => output
...
В Swift IOS App:
import UIKit
class FirstViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
reachForWebsite()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func reachForWebsite(){
let url = NSURL(string: "myURL")
let request = NSURLRequest(URL: url!)
let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {(data, response, error) in
println(NSString(data: data!, encoding: NSUTF8StringEncoding))
var error: NSError? = nil
if let jsonObject = NSJSONSerialization.JSONObjectWithData(data!, options: nil, error = &error){
if let dict = jsonObject as? NSDictionary {
println(dict)
} else {
println("not a dictionary")
}
} else {
println("Could not parse JSON: \(error!)")
}
println(data.dynamicType)
}
}
task!.resume()
}
}
Я могу проверить я успешно получать данные, потому что я могу преобразовать его в строку и распечатать его на консоль приложения. Однако я не могу создать объект NSDictionary. Ошибки изменяются с каждым воином, но относятся к опциям и пытаются поймать.
JSON
{"inside":[{"name":"BOB"}, ...],"outside":[{"name":"TIM","type":"HUMAN","id":1}, ...],"info":{"time":"2015-07-02"}}
Можете ли вы опубликовать пример JSON, который вы разбираете? –
Похоже, что что-то не так с вашим JSON-форматом, или, может быть, это массив вместо словаря? Кроме того, это может быть или не быть частью ответа, который вы ищете, но это прекрасная возможность развернуть дополнительные опции с помощью коммутатора: https://gist.github.com/patricklynch/8d5b792c5fa2aad95fe7 –
@PatrickLynch Обновленный вопрос с Формат JSON – Marcus