Ich habe dieses Beispiel:Swift 3 - ungültiges JSON-Objekt von [[String: Alles]]
var commands = [[String: Any]]()
Nach einigen Berechnungen, ihr Ergebnis ist:
[["command": 50022, "homes": [["gateways": [["mac": "845DD74B405E", "services": [["iid": 9, "name": "Some name"]], "aid": 1]], "name": "H1"]]], ["command": 50025, "services": [["mac": "845DD74B405E", "iid": 9, "aid": 1, "new_name": "Some name"]]]]
ich es konvertieren möge (commands
) zu JSON mit SwiftyJSON:
let json = JSON(commands)
print(json) // "unknown"
aber das Ergebnis ist immer unknown
.
Dann überprüfe ich die Gültigkeit von commands
, um sicherzustellen, dass es JSON-konvertierbar ist. Aber ich habe false
mit JSONSerialization.isValidJSONObject(commands)
, was unerwartet ist!
Haben Sie irgendwelche Ideen, warum commands
(Array von Dictionary) ist kein gültiges JSON
Objekt?
Dank
Ihr Array ist gültig. – vadian
Ich stimme dir zu, dass das Array gültig ist (ich habe es mit 'print (type (of: commands))' -> array) verifiziert. Aber was mich verwirrt, ist: Wenn es gültig ist, wie kommt es dann, dass es kein gültiges JSON-Objekt ist? – quanguyen
Es ist auch ein gültiges JSON-Objekt. Ich habe es auf einem Spielplatz bewiesen. – vadian