Nachdem die Datei partitioniert wurde, müssen Sie eine Methode zum Speichern auf dem Server auswählen. Verwenden Sie upload.saveBigFilePart für den Fall, dass die volle Größe der Datei mehr als 10 MB beträgt, und upload.saveFilePart für kleinere Dateien. Hilfe zum Durchsuchen Der Festplatte finden Sie in den Hilfedateien für Ihr Betriebssystem. In jedem Fall sollte sich das angeforderte Teil innerhalb eines 1 MB-Blocks vom Anfang der Datei befinden, d.h. Der Dateispeichervorgang kann einen der folgenden Dateneingabefehler zurückgeben: Bei der Arbeit mit der API ist es manchmal notwendig, eine relativ große Datei an den Server zu senden. Zum Beispiel beim Senden einer Nachricht mit einer Foto-/Videoanlage oder beim Festlegen des Profilbilds des aktuellen Benutzers. Der binäre Inhalt der Datei wird dann in Teile aufgeteilt. Alle Teile müssen die gleiche Größe haben ( part_size ) und die folgenden Bedingungen müssen erfüllt sein: Laden Sie Dateien von Google Drive mit einem Computer oder einem Android-Gerät herunter. Bevor jeder Teil der vom Domänencontroller empfangenen Daten in der Datei gespeichert wird, kann der Client bestätigen, dass sein Hash mit dem Hash übereinstimmt, der vom Master-DC empfangen wurde. Wenn ein Hash für einen Dateiteil fehlt, müssen Cliententwickler die upload.getFileHashes-Methode verwenden, um den fehlenden Hash zu erhalten. Um die Integrität der heruntergeladenen Datei zu bestätigen, wird Clients empfohlen, Hashes für jedes heruntergeladene Teil zu überprüfen, wie für CDN-DCs. upload.getFileHashes enthalten FileHash-Konstruktoren. Jeder dieser Konstruktoren enthält den SHA-256-Hash eines Teils der Datei, der mit Offset beginnt und Limit-Bytes benötigt.

Sehen Sie sich den Oberen der Protokolldatei für die folgende Zeile an: ; LAST_TARGET_FOLDER=[Festplattenspeicherort]. Diese Zeile gibt beispielsweise an, dass die Datei auf Ihrem Desktop gespeichert wurde: Ich bin neu bei Objective-C und möchte eine Datei aus dem Web herunterladen (wenn sie auf dem Webserver geändert wurde) und lokal speichern, damit sie von meiner Anwendung verwendet werden kann. Überprüfen Sie den Speicherort, an dem Ihr Browser heruntergeladene Dateien automatisch speichert: NSURLSession, die in iOS 7 eingeführt wurde, ist die empfohlene SDK-Methode zum Herunterladen einer Datei. Es ist nicht erforderlich, Bibliotheken von Drittanbietern zu importieren. In diesem Beispiel wird das Google-Logo im Dokumentverzeichnis des Geräts gespeichert. (iOS 5+, OSX 10.7+) Während die Teile hochgeladen werden, kann ein MD5-Hash des Dateiinhalts auch berechnet werden, um später als md5_checksum Parameter im inputFile-Konstruktor verwendet zu werden (da er nur vom Server überprüft wird, muss er bei verschlüsselten geheimen Chatdateien aus der verschlüsselten Datei generiert werden). Nachdem die gesamte Datei erfolgreich gespeichert wurde, kann die endgültige Methode aufgerufen und das generierte inputFile-Objekt übergeben werden. Falls die upload.saveBigFilePart-Methode verwendet wird, muss der inputFileBig-Konstruktor übergeben werden, in anderen Fällen verwenden Sie inputFile. Wenn Sie die heruntergeladene Datei nicht finden können, versuchen Sie es erneut. Oder, siehe eine der folgenden Für weitere Hilfe, je nachdem, was Sie herunterladen: Wenn Sie eine der oben genannten Methoden verwenden, um Dateiteile zu speichern, kann einer der folgenden Dateneingabefehler zurückgegeben werden: Es gibt eine Reihe von API-Methoden zum Speichern von Dateien. Das Schema der verwendeten Typen und Methoden wird unten dargestellt: Hinweis: Sie können eine Datei oder einen Ordner nicht direkt auf Ihren Desktop ziehen. Der folgende Code zeigt, wie Die Datei synchron heruntergeladen wird.

Diese Methode blockiert den Hauptthread, bis die Datei heruntergeladen wird oder ein Fehler auftritt (in diesem Fall wird die WebException ausgelöst). Für Profilbilder von Benutzern, Kanälen, Supergruppen und Gruppen, da sie in den meisten Fällen als einfache FileLocationToBeDeprecated-Konstruktoren ohne zugeordnetes Foto auftreten, muss inputPeerPhotoFileLocation verwendet werden: Der Dateidownloadvorgang kann einen FILE_REFERENCE_EXPIRED Fehler (oder einen anderen Fehler ab FILE_REFERENCE_) zurückgeben: In diesem Fall muss das file_reference Feld des Eingabespeicherorts aktualisiert werden. Der Dateidownloadvorgang kann einen upload.fileCdnRedirect-Konstruktor zurückgeben: In diesem Fall müssen diese Anweisungen zum Herunterladen von CDN-Dateien befolgt werden.

Author

admin