2014-09-03 36 views
8

Xcode beta6 kullanıyorum. Bir Downloader sınıf var bir uygulama oluşturulur ve bu Downloader sınıftır: Sunucu LAN kablosu ile ağ üzerinde ancak bu sunucu bağlandığındaNSURLConnection neden Error Domain = NSURLErrorDomain Code = -1005 ile başarısız oldu. "Ağ bağlantısı kesildi." Swift iOS8 içinde?

class Downloader : NSObject { 

    private var _connection : NSURLConnection? 
    private var _downloadedData: NSMutableData? 

    func getDataFromURLString(urlToRequest: String!, aType: DownloadedDataType) { 

     _downloadedData = NSMutableData() 

     var request : NSMutableURLRequest = NSMutableURLRequest(URL: NSURL(string: urlToRequest), cachePolicy: .ReloadIgnoringLocalCacheData, timeoutInterval: 20.0) 
     request.setValue("", forHTTPHeaderField: "Accept-Encoding") 

     self._connection = NSURLConnection(request: request, delegate:self) 
    } 

    func connection(connection: NSURLConnection!, didReceiveResponse response: NSURLResponse!) { 
     println("Data expected size: \(response.expectedContentLength)") 
    } 

    func connectionDidFinishLoading(connection: NSURLConnection!) { 
     println("finished") 
    } 

    func connection(connection: NSURLConnection!, didFailWithError error: NSError!) { 
     println("error: \(error)") 
    } 

    func connection(connection: NSURLConnection!, didReceiveData data: NSData!) { 
     _downloadedData?.appendData(data) 
    } 

} 

Bu sınıf iyi çalışıyor ve sağ JSON sonuç almak WiFi üzerinden aynı ağa iOS cihazdan bu hatayı alıyorum:

Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." 

Ama Yani sadece cihazlar idare edemiyorlar iOS'ta ben json bkz tarayıcıya json yolunu .. yapıştırın çünkü eğer onun gerçekten garip, ama ne yapmam gerektiğini bilmiyorum .. Herkes bana yardım edebilir mi? Ben geliştirmek için kullandığımız benim Mac Mini Lan üzerindedir ve Sunucu Lan açıksa

Böylece, her şey gayet iyi çalışıyor. Ama Mac mini benim WiFi ve sunucum Wifi olduğunda Bu hatayı alıyorum ...

+0

simülatörünü çıkın ve projenizi yeniden çalıştırın. arasında –

+4

Olası kopyalar [NSURLConnection GET isteği -1005 döndürür "ağ bağlantısı kesildi"] (http://stackoverflow.com/questions/25797339/nsurlconnection-get-request-returns-1005-the-network-connection-was -lost) – Mogsdad

cevap

2

İlk sorum, aynı görevi Objective-C/kullanarak aynı görevi yerine getirmeyi denediniz mi? iOS 7? Bu, Swift, iOS 8'de bir sorun mu yoksa kodunuzda bir sorun mu var? Eğer varsa, lütfen bu kodu bir düzenle/güncellemeye gönderin.

İkinci soru: Neden kabul-kodlamasını geçersiz kılma var? Birçok sunucu, varsa, üstbilgi değerini belirtmeniz durumunda bir şey gerektirir. Bunu kaldırmak için en iyisi.

Üçüncü soru: iOS 8 beta Ne sürümünü kaçıyorsun? FWIW, SO'nın basit bir araştırması bu soruyu gösterdi: Bu, iOS 8 beta'larında bir hata olabileceğinden, Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost."

. Önce objektif-c'yi denemenizi öneririm ve eğer bu da bozulursa, geliştirici forumlarına gidin ve Apple'ın dikkatini çekmek için sorununuzu gönderin. Bunun için bir Radar açmak isteyebilirsiniz.

+0

Bir düzeltme var mı? Aynı sorunu iOS8 (ilk halka açık sürüm) ve Objective-C kullanarak ancak yalnızca evdeki WiFi'de yaşıyorum. Hata, ofisimde veya çalıştığım diğer WiFi ağlarında oluşmuyor. Ben son nokta kıvrılıp zaman iyi çalışır, bu yüzden kesinlikle şartların farklı bir set NSURLConnection – user2393462435

+0

bir saçak mesele, bu yüzden muhtemelen yeni bir soru (uygun günlükleri ile bağlantı kurmaktan çekinmeyin ve ben bir göz atacağız.) İşte varlık garanti dedi, cevabımın cevabındaki daha sonraki cevapları gördün mü? IOS 8'in NSURLConnection sürümünde HTTP Keep-alive ile bazı garip görünüyor. Belki de bunu yapıyor? –

+0

Ahh, Bağlantınızı tamamen özledim. Kesinlikle aynı hayatta kalmak sorunu var. Teşekkürler. – user2393462435

0

Ben tamamen benim Kablosuz ağ bağlantısını silme ve ağ bağlantısı listeden seçerek ve tekrar şifre girerek onu yeniden başlatmasını tarafından bu sorunu çözdü. Sayfanın alt kısmındaki burada yığın taşması cevabı:

NSURLConnection GET request returns -1005, "the network connection was lost"

+2

Bu soru diğer Yığın Taşma mesajınız tarafından yanıtlanabilirse, bu soruyu yanıt yazmak yerine kopya olarak işaretlemelisiniz ... – nhgrif

İlgili konular