2016-04-13 13 views
0

Hallo ich implementieren Alamofire gerade und es funktioniert gut, aber das Ergebnis JSon nichtAlamofire json zurück "=" nicht ":"

let UrlString = urlString 
    let url = NSURL(string: UrlString)! 
    let request = NSMutableURLRequest(URL: url) 
    request.HTTPMethod = hTTPMethod 
    request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type") 
    request.setValue("application/json", forHTTPHeaderField: "Accept") 
    let HttpBodyString = httpBody 
    let data = HttpBodyString.dataUsingEncoding(NSUTF8StringEncoding) 

    request.HTTPBody = data 

    Alamofire.request(request) 
     // .validate() 
     .responseJSON { response in 
if let JSON = response.result.value { 

     print("JSON: \(JSON)") 
} 

es gibt mir

JSON: (
     { 
     "Area_ID" = 2; 
     "City_ID" = 5; 
     "House_Building_No" = 2; 
     "House_Floor" = 2; 
     "House_QRCode" = 1; 
     "Region_ID" = 6; 
     "Street_ID" = 2; 
    } 
) 

es JSon nicht ich will es mit: nicht = gib mir auch; nicht,

+0

dass gerade ist, wie Wörterbücher formatiert sind, wenn man sie sich einzuloggen, die rohe json wurde bereits ein umgewandelt Objekt – dan

Antwort

0

Die Variable response.result.value in Alamofire responseJSON-Methode ist ein NSDictionary. Die gedruckte Ausgabe, die Sie sehen, ist die Standardmethode zum Drucken von NSDictionaries.

Wenn Sie eine Zeichenfolge mit JSON haben möchten, die im Standardformat ausgedrückt wird (d. H. Mit ":" zwischen Schlüssel und Werten), versuchen Sie stattdessen die Methode responseString.

Alternativ, wenn Sie ein JSON-Objekt haben wollen, könnten Sie SwiftyJSON verwenden und wie folgt vorgehen:

Alamofire.request(request).responseJSON { 
    response in 
    if let jsonDictionary = response.result.value { 
     let json = JSON(jsonDictionary) 
     print(json) 
    } 
} 
Verwandte Themen