NSURLErrorDomain mit code=-1100
Ich habe versucht, laden Sie ein Bild, um meine app aus
Die Anforderung ist fehlgeschlagen mit dem Fehler NSURLErrorDomain und der code ist wirklich -1100. Die url muss korrekt sein, da ich es gecheckt habe, in den browser. Weiß jemand, warum?
let userImageURL: String! = "http://i.imgur.com/QhCzQoR.jpg";
let url = NSURL(fileURLWithPath: userImageURL);
let request:NSURLRequest = NSURLRequest(URL: url!)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue(), completionHandler: { (response:NSURLResponse!, imageData:NSData!, error:NSError!) -> Void in
let image = UIImage(data: imageData!);
})
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Grund, Sie bekommen dieses problem ist, weil Sie verwendet haben,
Stattdessen sollten Sie verwenden:
Ich code in Objective-C, sollte es einfach sein, es zu konvertieren in Swift (kleine änderung in der Tat, aber die Erklärung ist nicht, dass wenig mit code).
Wenn Sie das Kontrollkästchen Fehler-komplette Nachricht, die Sie erhalten:
Deutlich, wenn man sich genau an die URL, die Sie haben
file:///http:/i.imgur.com/QhCzQoR.jpg
, die nicht in der URL haben wollte. Wenn Sie sichurl.absoluteString
sehen Sie es auf Ihre URL, sind Sie es, die es so einstellen.Warum? Weil Sie verwendet werden
fileURLWithPath:
stattURLWithString:
.So ändern Sie Ihre Linie mit:
Einige Diskussionen über die Unterschiede zwischen zwei Thesen:
Was ist der Unterschied zwischen URLWithString und fileURLWithPath von NSURL?
oder die doc.
Update: Im Swift 4:
Empfehlen wir, auch aus Swift3+ zu vermeiden, NSStuff, wenn es Swift-Äquivalent:
NSURL
=>URL
.NSURL(string:String?)
im Swift2. Beachten Sie, dass, wenn Sie verwenden Sie diese URL, um einen Auftrag anzulegen, müssen Sie!
nachurl
variable, weilstring
ist optional in dieser Methode.