Ich bin neu in Swift und API-Programmierung und leite in den folgenden Fehler:JSON Fehler in schnellen
uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFNumber length]
Das ist die Linie, die diesen Fehler verursacht:
print(json[“totalPostsByUser”])
Für mehr Kontext, das ist ein vollständigeres Codebeispiel:
let jsonStr = NSString(data: request.HTTPBody!, encoding: NSUTF8StringEncoding)
let task = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in
let httpResponse = response as? NSHTTPURLResponse
var err: NSError?
if httpResponse!.statusCode == 201 {
if error == nil {
let jsonStr = NSString(data: data!, encoding: NSUTF8StringEncoding)
let jsonData: NSData = jsonStr!.dataUsingEncoding(NSUTF8StringEncoding)!
do {
if let json: AnyObject = try NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions.AllowFragments) {
let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)
print(responseString)
print(json["totalPostsByUser"])
totalPostsByUser = (json["totalPostsByUser"] as? Int)!
}
} catch let parseError {
}
}
}
}
'totalPostsByUser = (json [" totalPostsByUser "] als? Int)!' Sollte entweder 'totalPostsByUser = json [" totalPostsByUser "] sein! Int 'oder 'totalPostsByUser = json [" totalPostsByUser "] als? Int' (Hinweis, die zweite Option ist besser) – Daniel