0

问题的解决方案,但仍然出现错误

App Transport Security 已阻止明文 HTTP (http://) 资源加载,因为它不安全。可以通过应用程序的 Info.plist 文件配置临时例外。

我已经尝试了图片上的解决方案,但仍然出现错误

   import UIKit

   class ViewController: UIViewController {


   lazy var data = NSMutableData()


    override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.



    let url = NSURL(string: "http://android.goidx.com/search")
    let session = NSURLSession.sharedSession()
    let task = session.dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
        if error != nil {
            print(error)
            } else {
            do {
                let jsonResult = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers) as!  NSDictionary
                // print(jsonResult)

                print(jsonResult[0])
            } catch {
                print("my error")
            }
        }

    })

    task.resume()





}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
  }




 }
4

1 回答 1

1

您的 plist 文件应如下所示: 在此处输入图像描述 请注意,您的代码会使应用程序崩溃,因为您正在转换为字典,其中它应该是一个数组:

 override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.



        let url = NSURL(string: "http://android.goidx.com/search")
        let session = NSURLSession.sharedSession()
        let task = session.dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
            if error != nil {
                print(error)
            } else {
                do {
                    let jsonResult = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers) as!  NSArray
                    // print(jsonResult)

                    print(jsonResult[0])
                } catch {
                    print("my error")
                }
            }

        })

        task.resume()





    }

然后一切都应该工作 - 它对我有用。

于 2016-03-17T20:59:16.197 回答