2016-03-30 4 views
0

habe ich eine Anfrage, die die Zeichenfolge Format-String in Anforderung Körper nehmen, wie folgendVerdorbene Daten, wenn convert String zu NSData in schnellen

{"DeviceId":"B7A71027-78B1-4E25-9AC3-350EEB981C58", "TokenId":"B7A71027-78B1-4E25-9AC3-350EEB981C58", "OsType":"ios", "Email":"[email protected]", "UserName":"Amira", "Password":"1111", "ProfileImage":""} 

aber rasche Anfrage Körper nur NSData Typ akzeptieren, damit ich die folgenden drei gesucht und gefunden Linien, die String zu NSData

 let data = parameter.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true) 
     let convertedStr = NSString(data: data!, encoding: NSUTF8StringEncoding) 
     let finalString = convertedStr!.dataUsingEncoding(NSUTF8StringEncoding) 

das Problem jetzt, dass die endgültige Zeichenfolge, die an den Server gesendet nicht formatiert ist und nicht akzeptiert von Server konvertieren, wird es wie folgt aus

sah 10
finalString: 
Optional(<7b224465 76696365 4964223a 22423741 37313032 372d3738 42312d34 4532352d 39414333 2d333530 45454239 38314335 38222c20 22546f6b 656e4964 223a2242 37413731 3032372d 37384231 2d344532 352d3941 43332d33 35304545 42393831 43353822 2c20224f 73547970 65223a22 696f7322 2c202245 6d61696c 223a2261 2e614061 2e636f6d 222c2022 55736572 4e616d65 223a2241 6d697261 222c2022 50617373 776f7264 223a2231 31313122 2c202250 726f6669 6c65496d 61676522 3a22227d>) 

also jetzt Server gib mir Fehler, wie kann ich dieses Problem bitte lösen?

+2

Hinzufügen Sie einen String in Daten umwandeln wieder in einen String, zurück, zurück auf die Daten. Warum? – gnasher729

+0

finalString es ist NSData keine Zeichenkette –

+0

Warum benutzen Sie nicht stattdessen 'NSJSONSerialization'? – Sulthan

Antwort

0

fixiert ich das Problem durch

request.setValue("application/json; charset=utf-8", forHTTPHeaderField: "Content-Type")