iOS - 从UIImageView中的Parse检索并显示图像(Swift 2.1错误)

时间:2015-10-28 11:32:07

标签: ios uiimageview swift2.1

我试图从解析中获取与此问题类似的图像

iOS - Retrieve and display an image from Parse in UIImageView (Swift 1.2 Error)

func fetchDataEmployer(){

    self.companyNameLabel.text = (PFUser.currentUser()?.objectForKey("companyName")?.capitalizedString)! as String

    //MARK: - FETCHING IMAGE FILE FROM PARSE
    if let companyImage = PFUser.currentUser()?["profileImageEmployer"] as? PFFile {
        companyImage.getDataInBackgroundWithBlock({ ( imageData: NSData?, error: NSError?) -> Void in
            if error == nil{
                self.profileEmployerImage.image = UIImage(data: imageData!)
            } else {
                print("No image found")
            }
        })
    }
}

不断返回

1 个答案:

答案 0 :(得分:1)

我认为您的错误是由于App Transport Security造成的。您从不安全的http网址获取图片,为此,您必须在Info.plist文件中启用网址。

More about ATS

基本上你可以测试的是通过添加

来禁用ATS
<key>NSAppTransportSecurity</key>
<dict>
  <!--Include to allow all connections (DANGER)-->
  <key>NSAllowsArbitraryLoads</key>
      <true/>
</dict>

到您的Info.plist文件。 (右键单击Info.plist - &gt;打开为 - &gt;源代码,然后添加上面的键和值。)

如果此方法有效,则应仅为此网址添加特殊权限,并还原以前的停用。

只是启用特定域有点棘手。您需要了解一些违反ATS的方法来解决它。它看起来像我想象的那样

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
  <dict>
    <key>parse.com</key>
    <dict>
      <!--Include to allow subdomains-->
      <key>NSIncludesSubdomains</key>
      <true/>
      <!--Include to allow HTTP requests-->
      <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
      <true/>
      <!--Include to specify minimum TLS version-->
      <key>NSTemporaryExceptionMinimumTLSVersion</key>
      <string>TLSv1.1</string>
    </dict>
  </dict>
</dict>