【问题标题】:Xcode8 Swift3 PHP Need Swift3 coding to display base64 imageXcode8 Swift3 PHP 需要 Swift3 编码来显示 base64 图像
【发布时间】:2016-10-18 07:18:41
【问题描述】:

这是我正在使用的 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()
}

【问题讨论】:

    标签: url uiimage base64 swift3 xcode8


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-18
      • 2018-01-14
      • 1970-01-01
      • 1970-01-01
      • 2018-07-11
      • 2011-09-12
      相关资源
      最近更新 更多