Ios Swift NSURLConnection立即返回,并出现1005错误
我正在开发一个用swift编写的新应用程序,我看到这个错误消息到处都是,说:重新启动模拟器 糟糕的是,在我的例子中,这似乎不是答案,一个用objective-C编写的旧应用程序似乎使用完全相同的方法,但它确实工作得很好,但是当我对一个Api(我们的)进行NSUrlConnection调用时,它似乎不适用于新的应用程序 响应是一个带有一些json数据的正确的200,没有重定向。它在我同时开发的Android应用程序上运行良好 基本上我有:Ios Swift NSURLConnection立即返回,并出现1005错误,ios,swift,nsurlconnection,Ios,Swift,Nsurlconnection,我正在开发一个用swift编写的新应用程序,我看到这个错误消息到处都是,说:重新启动模拟器 糟糕的是,在我的例子中,这似乎不是答案,一个用objective-C编写的旧应用程序似乎使用完全相同的方法,但它确实工作得很好,但是当我对一个Api(我们的)进行NSUrlConnection调用时,它似乎不适用于新的应用程序 响应是一个带有一些json数据的正确的200,没有重定向。它在我同时开发的Android应用程序上运行良好 基本上我有: func getRequest() -> NSMut
func getRequest() -> NSMutableURLRequest {
let request = NSMutableURLRequest(URL: NSURL(string: package.fullPath)!)
request.HTTPMethod = package.apiMethod.description;
request.HTTPBody = "hi".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)
return request;
}
func execute() {
conn = NSURLConnection(request: getRequest(), delegate: self);
if let c = conn {
Debug.log("** api-connection-start **");
}
}
相关侦听器(该类实现NSURLConnectionDataDelegate):
我在所有这些helper方法上都有断点,只有didFailWith错误会立即调用,错误包含:
2015-03-31 16:58:29.853 myappname[537:4136] {
NSErrorFailingURLKey = "http://xxxxxxxx/valid/api/call";
NSErrorFailingURLStringKey = "http://xxxxxxxx/valid/api/call";
NSLocalizedDescription = "The network connection was lost.";
NSUnderlyingError = "Error Domain=kCFErrorDomainCFNetwork Code=-1005 \"The network connection was lost.\" UserInfo=0x7fdf3bc465d0 {NSErrorFailingURLStringKey=http://xxxxxxxx/valid/api/call, NSErrorFailingURLKey=http://xxxxxxxx/valid/api/call, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4, NSLocalizedDescription=The network connection was lost.}";
"_kCFStreamErrorCodeKey" = "-4";
"_kCFStreamErrorDomainKey" = 4;
}
显然,我替换了公司名称和确切的url,因为我无法共享这些,我可以保证这些都是正确的
有人看到我的纸巾出了毛病吗?哭了好几个小时,直到我睡着,醒来又开始工作,它又神奇地工作了 谢谢奥巴马! 无论如何,除了清理外,请确保清除xcode中的所有数据,这也会导致这些问题,而不仅仅是重新启动模拟器。错误是“网络连接丢失” 这是您在任何时候都会遇到的错误,因为您应用程序的用户随时都可能失去网络连接。它可以随时回来 你无权解决这个问题。你必须应付它,例如,当它发生时,不要撞车,也不要吊死。用户也无权解决此问题 旧版应用程序运行良好,因为您在网络连接未断开的不同时间使用它。似乎你不应该哭泣,而应该思考正在发生的事情。如果您的网络连接丢失,除了等待,您别无选择
所有这些你一直在尝试的事情都是毫无意义的;无法修复丢失的网络连接。(嗯,在我家,确保没有人踢开连接路由器和电话插头的电缆会有所帮助) 1005是网络连接丢失。你确定你已连接到Internet吗polder Objective c应用程序使用nsurl连接即可连接。使用safari也可以工作我感觉它现在真的可以工作了,即使我昨天重新启动了,我想我应该花更多的时间来彻底清理项目,除了点击清理和重新启动。我尝试了100多次,我想它不可能与临时文件有什么关系。
2015-03-31 16:58:29.853 myappname[537:4136] {
NSErrorFailingURLKey = "http://xxxxxxxx/valid/api/call";
NSErrorFailingURLStringKey = "http://xxxxxxxx/valid/api/call";
NSLocalizedDescription = "The network connection was lost.";
NSUnderlyingError = "Error Domain=kCFErrorDomainCFNetwork Code=-1005 \"The network connection was lost.\" UserInfo=0x7fdf3bc465d0 {NSErrorFailingURLStringKey=http://xxxxxxxx/valid/api/call, NSErrorFailingURLKey=http://xxxxxxxx/valid/api/call, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4, NSLocalizedDescription=The network connection was lost.}";
"_kCFStreamErrorCodeKey" = "-4";
"_kCFStreamErrorDomainKey" = 4;
}