我正在尝试使用 Swift 构建一个非常基本的 iOS 应用程序——这是我第一次这样做。尽管其中大部分内容都非常简单。让应用程序与我的 API 或任何一般网站对话,我做了一场噩梦!
这是我正在使用的代码,特别是出错的代码:
NSURLConnection.sendAsynchronousRequest(request, queue: queue, completionHandler:{ (response: NSURLResponse!, data: NSData!, error: NSError!) -> Void in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
})
错误的是 'NSString(data: data, encoding: NSUTF8StringEncoding)'
我已经阅读了尽可能多的教程,它们都给我同样的问题。我收到一条错误消息:
NSURLErrorDomain - 代码:4294966291
我还收到一个“EXC_BAD_INSTRUCTION”错误:EXC_1386_INVOP,子代码 = 0x0(这并没有让我找到解决方案......
这让我觉得我在我的设置中没有做正确的事情,或者我的偏好中应该打开一些东西,或者与我的代码相反的东西......
这是我的全部代码:
var URL: NSURL = NSURL(string: "http://stackoverflow.com")
var request:NSMutableURLRequest = NSMutableURLRequest(URL:URL)
request.HTTPMethod = "POST"
var bodyData = "key1=value&key2=value&key3=value"
println(URL)
println(bodyData)
request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding);
let queue:NSOperationQueue = NSOperationQueue()
NSURLConnection.sendAsynchronousRequest(request, queue: queue, completionHandler:{ (response: NSURLResponse!, data: NSData!, error: NSError!) -> Void in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
})
更新:
使用 Rob 的代码,我知道会打印一个错误:
sendAsynchronousRequest 错误:错误域=NSURLErrorDomain 代码=-1005“网络连接丢失。” UserInfo=0x7beafcc0 {NSErrorFailingURLStringKey= http://stackoverflow.com , _kCFStreamErrorCodeKey=57, NSErrorFailingURLKey= http://stackoverflow.com , NSLocalizedDescription=网络连接丢失。, _kCFStreamErrorDomainKey=1, NSUnderlyingError=0x7d154ca0 "网络连接丢失."}