NSURLErrorDomain错误代码1002说明

时间:2014-10-30 07:37:02

标签: ios json swift

我是 iOS 开发的新手。我正在尝试加载 JSON ,这是我的功能:

func loadmyJSON (urlPath: String) {      

    let url: NSURL = NSURL(string: urlPath)!

    let session = NSURLSession.sharedSession()

    let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in
               println("Task completed")
        if(error != nil) {
            // If there is an error in the web request, print it to the console
            println("error not nil::::::")
            println(error.localizedDescription)
        }
        var err: NSError?

        var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary
        if(err != nil) {
            // If there is an error parsing JSON, print it to the console
            println("JSON Error \(err!.localizedDescription)")
    }


        let results: NSArray = jsonResult["variants"] as NSArray
                    dispatch_async(dispatch_get_main_queue(), {

            self.jsonTable = results
            self.productView!.reloadData()
           })
     })

但是我收到了这个错误:

error not nil::::::
The operation couldn’t be completed. (NSURLErrorDomain error -1002.)

我可以通过相同的URL在浏览器中获取JSON。 我试过阅读THIS: 但是我无法得到描述。

此错误代码的含义是什么?

3 个答案:

答案 0 :(得分:23)

NSURLErrorDomain error -1002表示NSURLErrorUnsupportedURLkCFURLErrorUnsupportedURL。它表示在大多数情况下提供了错误的URL,从URL前缀中遗漏了http://

所有NSURLErrorDomain代码列表均可在此处找到:https://developer.apple.com/documentation/foundation/1508628-url_loading_system_error_codes

答案 1 :(得分:1)

除了上述答案外,可能发生这种情况的原因之一是,您已将允许任意负载设置为false Info.plist和您要尝试的URL负载不在安全服务器上。

解决方案是将其设置为yes,或移动到安全连接,即https://

希望它可以帮助某人。一切顺利。

答案 2 :(得分:0)

我遇到同样的问题,发现URL中缺少 key 参数。您需要在用于发出请求的URL中为键参数设置 Google地图键值。如果您缺少其他键,可能会发生这种情况。