Xcode8 Swift 3 PHP 需要 Swift 3 编码才能显示 base64 图像

Xcode8 Swift3 PHP Need Swift3 coding to display base64 image

这是我正在使用的 PHP 和 Swift3 代码。自早期的 Swifts 以来,语言已经发生了变化。有人知道吗?

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()
}

服务器上的数据需要编码。