Ich versuche, Daten von einer URL in Swift 3 mit Alamofire zu erhalten. In der Zelle werden keine Daten übertragen. Ich weiß, dass ich irgendwo etwas vermasselt habe, aber ich bin ziemlich neu zu swift 3 und kann das Problem nicht sehen, der Code ist unten:Es kommen keine Daten von JSON mit Alamofire Swift 3 und Xcode 8 beta
JSON Struktur.
{
posts:
[
{
id: “000000”,
url: "/content/interview",
date: "2016-11-03 09:01:41",
modified: "2016-11-03 09:03:47",
title: "An interview",
summary:
{
value: "<p>Lorem ipsum is simply dummy text</p> ",
format: "filtered_html"
}
]
}
Swift:
import UIKit
import Alamofire
class TableViewController: UITableViewController {
var titles = [String]()
var mainURL = "https://www.testapi.com"
typealias JSONstandard = [String : AnyObject]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
callAlamo(url: mainURL)
}
func callAlamo(url : String){
Alamofire.request(url).responseJSON(completionHandler: {
response in
self.parseData(JSONData: response.data!)
})
}
func parseData(JSONData : Data) {
do {
var readableJSON = try JSONSerialization.jsonObject(with: JSONData, options: .mutableContainers) as! JSONstandard
print(readableJSON)
if let post = readableJSON["posts"] as? JSONstandard {
if let posts = post["posts"] {
for i in 0..<posts.count {
let post = posts[i] as! JSONstandard
let title = post["title"] as! String
titles.append(title)
self.tableView.reloadData()
}
}
}
}
catch {
print(error)
}
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return titles.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell")
cell?.textLabel?.text = titles[indexPath.row]
return cell!
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Die oben bringen keine Daten in die "Zelle". Jede Hilfe wäre willkommen.
Danke, das hat super funktioniert! Ich denke, dass das Einbringen anderer Daten das gleiche Prinzip wäre. – rob