Ich habe mehrere Tutorials zu diesem Thema, und soweit ich sagen kann, was ich tue, sollte funktionieren. Ich habe folgende json Antwort von einem API-AufrufParse JSON mit Swift/SwiftyJSON
{
"Id": "1",
"Name": "Test User",
"Email": "[email protected]",
"ProfileImage": null,
"IsAdmin": true,
"TakesJobs": false,
"IsLocationUser": false,
"IsCompanyAdmin": true,
"LocationUsers": [],
"CompanyUsers": [{
"CompanyName": "Test Company",
"Id": 6,
"CompanyId": 5,
"UserId": "1",
"Admin": true,
"TakesJobs": false,
"UserName": null,
"UserEmail": null,
"AssignedJobs": null
}]
}
Im Grunde mag ich nur überprüfen, ob der ID-Wert leer ist oder nicht. Hier ist der Code Ich verwende
Die res Rückgabetyp JSON ist
ApiConnector.sharedInstance.login(emailText.text!, password: passwordText.text!) { (res) in
if let id = res["Id"] as? String {
if id != "" {
}
else
{
}
}
}
ich eine Warnung erhalten, die Cast von ‚JSON‘ an unabhängigem Typen sagt ‚String‘ nicht immer.
Was muss ich ändern, um den Wert von Id zu sehen?
Dies ist der Code aus der ApiConnector Klasse
func login(username: String, password: String, onCompletion: (JSON) -> Void) {
let route = baseURL + "auth?Email=" + username + "&Password=" + password
makeHTTPPostRequest(route, body: ["Email":username, "Password": password], onCompletion: { json, err in
onCompletion(json as JSON)
})
}
Sorry, total, dass im Abstand. Ich habe den Titel editiert, um es zu reflektieren. Ich verwende SwiftyJSON – Jhorra
Der Res-Rückgabetyp ist JSON. Ich habe meine Frage auch mit dieser Information aktualisiert. – Jhorra