2016-10-18 52 views
0

這裏是我正在使用的PHP和Swift3代碼。自從早期的Swifts以來,語言發生了變化。有人知道嗎?Xcode8 Swift3 PHP需要Swift3編碼才能顯示base64圖像

PHP程序成功檢索照片,並將其編碼爲base64。我可以在safari和Xcode調試器中看到它。 Xcode8/Swift3運行時沒有錯誤,但不顯示圖像。有什麼建議麼?

PHP

<?php 
$photo=file_get_contents("pic3-1.jpg"); 
$base64=base64_encode($photo); 
$data=Array("photo"=>$base64"); 
echo json_encode($data); 
?> 

這讀取正常,但Swift3不顯示它。

XCode8 Swift3

@IBAction func load(_ sender: UIButton) { 

    let myUrl = NSURL(string: 
"http://www.example.com/connect9.php") 

    var request = URLRequest(url:URL(string: 
"http://www.example.com/connect9.php")!) 

    request.httpMethod = "POST" 

    let postString = "" 

    request.httpBody = postString.data(using: .utf8); 

    let task = URLSession.shared.dataTask(with: request) { data, 
response, error in 
     guard let data = data else { 
      print("request failed \(error)") 
      return 
     } 

     do { 
      if var json = try JSONSerialization.jsonObject(with: data) 
as? [String: String], var photo64 = json["photo"] { 

     var b64=photo64 as String 

       var unencodedString=Data(base64Encoded: b64) 

       var photo=UIImage(data: unencodedString!)! 

       self.view1.image=photo 

      } 

     } catch let parseError { 
      print("parsing error: \(parseError)") 
      let responseString = String(data: data, encoding: .utf8) 
      print("raw response: \(responseString)") 
     } 



    } 
    task.resume() 
} 

回答

0

所需的服務器上的數據進行編碼。