2017-10-11 44 views
0

我正在嘗試實現上傳照片的api。輸入json是{"Photo":"base64stringValue"}。 用於將UIImage的轉換爲base64string的代碼是在base64轉換後的圖像中出現 r

let imageData = UIImageJPEGRepresentation(image, 0.9) 
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) 

轉換成功。當我將imageStr轉換成圖像時,我能夠獲得正確的圖像。然而,在這個字符串傳遞給{"Photo":imageStr}我得到一個錯誤說

SUCCESS: { 
    Message = "The request is invalid."; 
    ModelState =  { 
     model =   (
      "An error has occurred." 
     ); 
    }; 

在檢查我發現,現在base64string包含插入之間的隨機\r\值。這是一個問題嗎?如果是的話,該如何解決?

+2

刪除'.lineLength64Characters'選項? - 從文檔:*「將最大行長度設置爲64個字符,之後插入一行結尾。」* –

+0

JSON字符串不能有回車符或換行符。你如何真正創建JSON字符串,以及如何將其轉換回Base64字符串? – JeremyP

回答

0

目標C代碼我用了:

NSData *imgData4 = UIImageJPEGRepresentation(image, 0); 
NSString *base64Encoded = [imgData4 base64EncodedStringWithOptions:0];