Ich arbeite an einer Datenbankverbindung zwischen Swift 3 und einer PHP-Datei. Senden von Informationen an den PHP wird korrekt in die Datenbank übertragen.swift 3 json funktioniert nicht
Aber ich habe ein Problem, wenn ich Informationen aus der Datenbank in meine xcode drucken möchte.
Ich sende diese json meiner App:
[{"latitude":"51.430536341034","longitude":"5.45947450542819"},
{"latitude":"51.4305299243587","longitude":"5.45964865535365"},
{"latitude":"51.4305299243587","longitude":"5.45964865535365"},
{"latitude":"51.4305299243587","longitude":"5.45964865535365"},
{"latitude":"51.4305299243587","longitude":"5.45964865535365"}]
ich dieses JSON in Xcode mit gedruckt:
print(NSString(data: data!, encoding: String.Encoding.utf8.rawValue)!)
Ich habe versucht, zwei Optionen, die in anderen Themen an dieser Stelle beschrieben wurden, bei beiden ging es um schnelle 3 und json probleme.
Option 1:
let parsedData = try? JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:AnyObject]
Wenn ich die app lief, da kommt ist ein Fehler:
Signal SGBRT Could not cast value of type '__NSArrayI' (0x1b2a89cc8) to 'NSDictionary' (0x1b2a8a128).
Option 2:
let parsedData = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! Dictionary<String, AnyObject>
Was passiert, ist das gleiche Signal SGBRT mit Fehler:
Could not cast value of type '__NSArrayI' (0x1b2a89cc8) to 'NSDictionary' (0x1b2a8a128).
Ich muss sagen, dass ich kein Profi bin, aber ich bin ein harter Lernstudent ohne Verbindungen, die auch schnell programmieren. Daher hoffe ich hier Hilfe zu bekommen, um diese Funktion der App zu beenden.
Wenn Sie das Thema beantworten, würde ich mich freuen, hier einige andere Codes, die ich ausprobieren sollte. Danke.
Nun, ein Array ist kein Wörterbuch ... !! Sie sollten das Ergebnis als Array von Wörterbüchern darstellen: '[[String: AnyObject]]' 'anstatt nur Wörterbuch. – Moritz
Und Sie brauchen 'allowFragments' nicht. Außerdem ist 'Dictionary' dasselbe wie '[String: AnyObject]'. –
Moritz
@EricAya Nun, das löst diesen spezifischen Fehler, aber ein neues kommt sofort auf. Wenn ich den Breitengrad wie folgt erhalten will: parsedData ["latitude"] wird es Type '[[String: AnyObject]]?' hat keine tiefgestellten Mitglieder .. – royvano