Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift NSURLConnection立即返回,并出现1005错误_Ios_Swift_Nsurlconnection - Fatal编程技术网

Ios Swift NSURLConnection立即返回,并出现1005错误

Ios Swift NSURLConnection立即返回,并出现1005错误,ios,swift,nsurlconnection,Ios,Swift,Nsurlconnection,我正在开发一个用swift编写的新应用程序,我看到这个错误消息到处都是,说:重新启动模拟器 糟糕的是,在我的例子中,这似乎不是答案,一个用objective-C编写的旧应用程序似乎使用完全相同的方法,但它确实工作得很好,但是当我对一个Api(我们的)进行NSUrlConnection调用时,它似乎不适用于新的应用程序 响应是一个带有一些json数据的正确的200,没有重定向。它在我同时开发的Android应用程序上运行良好 基本上我有: func getRequest() -> NSMut

我正在开发一个用swift编写的新应用程序,我看到这个错误消息到处都是,说:重新启动模拟器

糟糕的是,在我的例子中,这似乎不是答案,一个用objective-C编写的旧应用程序似乎使用完全相同的方法,但它确实工作得很好,但是当我对一个Api(我们的)进行NSUrlConnection调用时,它似乎不适用于新的应用程序

响应是一个带有一些json数据的正确的200,没有重定向。它在我同时开发的Android应用程序上运行良好

基本上我有:

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;
}