App Transport Security崩溃了Swift 2.0应用程序

时间:2015-09-24 12:42:21

标签: swift swift2 xcode7 app-transport-security

我几天前完成了我的应用程序,并安装了Xcode 7,这是一个痛苦的屁股,我有很多问题,但设法修复其中大部分,但现在,当我的应用程序需要连接到互联网我收到这个奇怪的错误 这就是我记录的内容:

  

App Transport Security已阻止明文HTTP(http://)资源   负载,因为它是不安全的。可以通过配置临时例外   您应用的Info.plist文件。 Hempel.temp_caseinsensitive_renameAgain   是通过优化编译的 - 步进可能表现得很奇怪;变量   可能无法使用。

enter image description here

enter image description here

let task = session.dataTaskWithRequest(request, completionHandler: {data, response, error -> Void in

            var strData = NSString(data: data!, encoding: NSUTF8StringEncoding)

            do {
                let json = try NSJSONSerialization.JSONObjectWithData(data!, options:NSJSONReadingOptions.MutableContainers ) as? NSDictionary
                if let parseJSON = json {
                   //THIS IS WHERE ERROR IS in other ViewController
                    var success = parseJSON["data"] as! [String: AnyObject]
                    let item = success["hempel_antifoulings"] as! [[String: AnyObject]]
                    for i in item{

                        let product = HempelAntifouling()
                        product.id =  i["id"]
                        product.name = i["name"]
                        product.imageUrl = i["image"]
                        product.subgroup = i["subgroup"]
                        let url = NSURL(string: String(stringInterpolationSegment: product.imageUrl))
                        let data = NSData(contentsOfURL: url!)
                        product.image = UIImage(data: data!)
            // AND THIS IS WHERE THE ERROR POINTS in one of the ViewController
                        self.array.append(product)
                    }

                }else{

                    let jsonStr = NSString(data: data!, encoding: NSUTF8StringEncoding)
                    print("Error could not parse JSON: \(jsonStr)")
                }
            } catch {
                // report error
            }

        })

        task.resume()

    }

P.S。这两行代码在两个ViewControllers中大致相似,但错误相同

1 个答案:

答案 0 :(得分:2)

以下是Info.plist中应该包含的内容的示例:

screen

此处有更多信息:https://developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/