Die Funktion downloadTaskWithURL
gibt manchmal einen Nicht-Null-Speicherort für eine Datei zurück, die nicht existiert.Swift: DownloadTaskWithURL "gelingt" manchmal mit einem Nicht-Null-Speicherort, obwohl die Datei nicht existiert
Es gibt keine Datei unter http://192.168.0.102:3000/p/1461224691.mp4
in der Testumgebung.
Der meiste Zeit, in der erwarteten Fehlermeldung downloadTaskWithURL
auf diese URL Ergebnisse Aufruf:
Error downloading message during network operation. Download URL: http://192.168.0.102:3000/p/1461224691.mp4 . Location: nil. Error: Optional(Error Domain=NSURLErrorDomain Code=-1100 "The requested URL was not found on this server." UserInfo=0x17547b640 {NSErrorFailingURLKey= http://192.168.0.102:3000/p/1461224691.mp4 , NSLocalizedDescription=The requested URL was not found on this server., NSErrorFailingURLStringKey= http://192.168.0.102:3000/p/1461224691.mp4 })
Gelegentlich und in einer nicht-deterministischen Art und Weise, downloadTaskWithURL
glaubt, dass die Datei vorhanden ist und schreibt etwas in die location
Variable . Daher schlägt die Schutzbedingung nicht fehl und der Code wird weiterhin ausgeführt ... was nicht der Fall sein sollte.
Die permanente Datei, die von fileManager.moveItemAtURL(location!, toURL: fileURL)
erstellt wird, ist nur 1 Byte und bestätigt, dass die Netzwerkdatei nie an erster Stelle existierte.
Warum verhält sich downloadTaskWithURL
so?
danke, gute Ideen. werde sie ausprobieren und die Ergebnisse melden! – Crashalot