NSURLErrorDomain 错误代码 1002 说明
Posted
技术标签:
【中文标题】NSURLErrorDomain 错误代码 1002 说明【英文标题】:NSURLErrorDomain error code 1002 description 【发布时间】:2014-10-30 07:37:01 【问题描述】:我是 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 Apple Doc,但无法获得描述。
这个错误代码是什么意思?
【问题讨论】:
-1002是NSURLErrorUnsupportedURL,说明你的urlPath
是错误的。
NSURLErrorDomain 错误 -1002 表示 NSURLErrorUnsupportedURL
或 kCFURLErrorUnsupportedURL
。您的 url 字符串很可能在 url 前缀中缺少“http://”。
@AsifAsif : 但是你从哪里得到这些错误代码的描述呢?
@sasquatch:你可以在这里找到列表(将Language
切换到Obj-C
):developer.apple.com/library/mac/documentation/Cocoa/Reference/…
【参考方案1】:
NSURLErrorDomain error -1002
表示NSURLErrorUnsupportedURL
或kCFURLErrorUnsupportedURL
。它表示提供了错误的 URL,在大多数情况下,URL 前缀中缺少 http://
。
所有NSURLErrorDomain
代码的列表可以在这里找到:https://developer.apple.com/documentation/foundation/1508628-url_loading_system_error_codes
【讨论】:
【参考方案2】:除了上述答案之外,可能发生这种情况的原因之一是,
您可能在 Info.plist 中将 允许任意加载 设置为 false
,并且您尝试加载的 URL 不在安全服务器上。
解决方案是将其设置为true
,或移至安全连接,即https://
。
希望它可以帮助某人。一切顺利。
【讨论】:
【参考方案3】:我遇到了同样的问题,发现 URL 中缺少 key 参数。您需要在用于发出请求的 URL 中为 key 参数设置 Google map key 值。如果您缺少其他键,则可能会发生这种情况。
【讨论】:
以上是关于NSURLErrorDomain 错误代码 1002 说明的主要内容,如果未能解决你的问题,请参考以下文章
错误:错误域=NSURLErrorDomain 代码=-1001“请求超时。”
错误:错误域=NSURLErrorDomain 代码=-1001 “请求超时。”
错误:错误域=NSURLErrorDomain 代码=-1001“请求超时。”