Ich habe mir hier eine Reihe anderer Fragen angeschaut, aber ich bin immer noch relativ neu in Swift und es fällt mir schwer, diese Antworten in meinen Kontext zu stellen.Auffüllen einer Tabellenansicht in Swift mit einem JSON-Objekt
Ich habe eine Datenbank von Ereignissen und ich möchte eine Tabellenansicht mit besagten Ereignissen bevölkern. In meinem ‚EventTableViewController‘ habe ich die folgende Funktion:
func HTTPRequestListEvent() {
let serverURL = NSURL(string: "http://localhost:8888/public_php/Cake/index.php/event/listevent")
let request = NSMutableURLRequest(url:serverURL! as URL)
request.httpMethod = "POST"
//Create a task to send the post request
let task = URLSession.shared.dataTask(with: request as URLRequest) {
data, response, error in
if error != nil {
print("HTTPRequestError1=\(error)")
return
}
do {
if let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? [String:AnyObject] {
print("1")
for (_, value) in json {
if let eventItem = value as? [String:AnyObject] {
if let eventName = eventItem["EventName"] as? String {
print(eventName)
}
if let eventLocation = eventItem["EventLocation"] as? String {
print(eventLocation)
}
}
}
}
}
catch {
print("HTTPRequestError2=\(error)")
}
}
task.resume()
}
Ich kann aber nicht die JSON Serialisierung scheinen, um zu arbeiten. Es gibt mir keinen Fehler, noch druckt es die '1' aus.
Auch ich will nicht sagen 'print (eventName)', aber das ist alles was ich bisher habe. Was ich will, ist, tun, um so etwas wie:
cell.eventNameLabel.text = eventName
aber ich bin nicht sicher, wie die Zelle Details in diesem Zusammenhang zu bekommen.
Edit: Mein JSON hat anderswo gearbeitet, aber für singuläre Daten - ich konnte mich anmelden und Benutzer registrieren.
Mit Postbote, erhalte ich die folgenden JSON-Daten von meinem Server:
[{ "Eventname": "Magnificent soir & eacute; e", "Eventlocation": "Hot Tub Kino", "Startdate": "2017 -12-01 "}, {" EventName ":" Splendid-Party "," EventLocation ":" Gazeebo "," StartDate ":" 2017-12-02 "}, {" EventName ":" Magisches Ereignis "," EventLocation ":" Das Ende eines Regenbogens "," StartDate ":" 2017-02-03 "}, {" EventName ":" Leichtes Müll sammeln "," EventLocation ":" Dungeon "," StartDate ":" 2090-01 -04 "}]
Höchstwahrscheinlich ist Ihr JSON kein Wörterbuch. – rmaddy
Können Sie ein Beispiel Ihres JSON hinzufügen? –
@rmaddy was bedeutet das für Laien und was mache ich mit diesen Informationen? – Weirdali