Automatisierter Download von Transfers
Zum Zweck der Automatisierung von Downloads ist es möglich, einen Transfer direkt, ohne das Benutzerinterface bedienen zu müssen, herunterzuladen. Hierfür muss der zusätzliche GET Parameter 'get' zu der URL des Transfers hinzugefügt werden:
|
Neu: https://<Cryptshare-Server-URL>/download?id=<Transfer-ID>&password=<Passwort>&<get[=all|=checksums|=allWithChecksums|=<Datei-ID>]> Alt: https://<Cryptshare-Server-URL>/download1.php?id=<Transfer-ID>&password=<Passwort>&<get[=all|=checksums|allWithChecksums|=<Datei-ID>]> Die alte URL funktioniert weiterhin, wird jedoch mit einer zukünftigen Version entfernt. |
Metainformationen über einen Transfer abrufen
Das Hinzufügen des Parameters „get“ führt lediglich zu einem HTTP-Download, der ein TXT-Dokument mit Informationen zum Transfer bereitstellt. Die Informationen werden in einem JSON-kompatiblen Format bereitgestellt. Struktur der JSON-Datei (Beispieldaten):
{
„file_1“:[
{
„6ac31d4b8b“:[
„transferFile_1.txt“
],
‚size‘:[
0
],
„sha1“:[
„“
],
„checksum“:[
‚0a28b295a883e4122c36482e4b0ad2275bbd2ebd60d066dc6f9e7fe6922ad7f4‘
],
„checksumAlgorithm“:[
„SHA-256“
]
}
],
„file_2“:[
{
„4f0109ad8b“:[
„transferFile_2.txt“
],
„size“:[
0
],
„sha1“:[
‚‘
],
„checksum“:[
„32d9c815c2c3cf989007b613d37844d919a1e7070b67a501150d760ac860505e“
],
‚checksumAlgorithm‘:[
„SHA-256“
]
}
],
„totalSize“:[
0
]
}
https://<Cryptshare-Server-URL>/download?id=234ds43re&password=23erwr2er&get Die Dateiliste
enthält alle Dateien dieses Transfers zusammen mit den entsprechenden
Datei-IDs auf. Dies bietet die Möglichkeit, eine bestimmte Datei zu finden und
diese Datei mit einem separaten Aufruf herunterzuladen.
Herunterladen bestimmter Dateien
Das Hinzufügen des Parameters „get“ zusammen mit einer bestimmten Datei-ID führt
zu einem HTTP-Download, der die Datei bereitstellt, die dieser ID entspricht.
https://cryptshare.ihredomain.de/download?id=234ds43re&password=23erwr2er&get=6ac31d4b8b
Anhand unseres obigen Beispiels lädt dieser Aufruf die Datei
„transferFile_1.txt“ herunter.
Herunterladen aller Dateien eines Transfers
Fügt man den Parameter „get“ zusammen mit dem Schlüsselwort „all“ hinzu, führt dies
zu einem HTTP-Download, der eine ZIP-Datei bereitstellt, die alle Dateien des
Transfers enthält.
https://cryptshare.ihredomain.de/download?id=234ds43re&password=23erwr2er&get=all
Dieser Aufruf lädt die Datei „cs_transfer.zip“ herunter, die laut
den Metainformationen die Dateien „transferFile_1.txt“
und „transferFile_2.txt“ enthält.
Als Beispiel können Sie den Download über die Befehlszeile starten, indem Sie diesen Befehl ausführen:
curl „https://cryptshare.ihredomain.de/download?id=234ds43re&password=23erwr2er&get=all“ --output download.zip
Hashwerte der Dateien eines Transfers herunterladen
Wird der 'get' Parameter zusammen mit dem Schlüsselwort 'checksums' verwendet, so erhält man einen HTTP-Download für eine CSV-Datei, welche Informationen zum Transfer enthält. Diese Informationen enthalten den Betreff der Benachrichtigungsmail und eine Liste der Transferdateien mit ihren jeweiligen Hashwerten. https://cryptshare.ihredomain.de/download?id=234ds43re&password=23erwr2er&get=checksums Dieser Aufruf wird die Datei 'checksums.csv' herunterladen, in welcher, gemäß obenstehenden Metainformationen, folgende Einträge enthält:
| Dateiname | Hashwert |
|---|---|
transferFile_1.txt |
0a28b295a883e4122c36482e4b0ad2275bbd2ebd60d066dc6f9e7fe6922ad7f4 (SHA-256) |
transferFile_2.txt |
32d9c815c2c3cf989007b613d37844d919a1e7070b67a501150d760ac860505e (SHA-256) |
Alle Dateien und die Hashwerte eines Transfers herunterladen
Wird der 'get' Parameter zusammen mit dem Schlüsselwort 'allWithChecksums' verwendet, so erhält man einen HTTP-Download für eine Zip-Datei, welche alle Dateien des Transfers und eine CSV-Datei enthält, die die Hashwerte der einzelnen Dateien enthält. https://cryptshare.ihredomain.de/download?id=234ds43re&password=23erwr2er&get=allWithChecksums Dieser Aufruf wird die Datei 'cs-transfer.zip' herunterladen, in welcher, gemäß obenstehenden Metainformationen, die Dateien 'transferFile_1.txt', 'transferFile_2.txt' und 'checksums.csv' enthalten sind.
HTTP-Fehlercodes und -Meldungen
Das Cryptshare Benutzerinterface wird sich anders verhalten, wenn der 'get' Parameter mit falschen Angaben verwendet wird. Im Gegensatz zu den Fehlermeldungen, welche normalerweise bei einer Falscheingabe im Webformular angezeigt werden, wird das Interface mit einem HTTP Fehlercode, abhängig vom Fehlerfall und der entsprechenden Fehlermeldung, antworten.
| Situation | Code | Code-Beschreibung |
|---|---|---|
|
400 |
Ungültige Anfrage |
|
404 |
Nicht gefunden |
|
401 |
Nicht autorisiert |
|
410 |
Nicht mehr vorhanden |
|
403 |
Zugriff verweigert |
|
412 |
Voraussetzung nicht erfüllt |
|
200 |
OK |
Auf diese Weise lässt sich der Grund für einen fehlgeschlagenen Download bei der Verwendung dieser Funktion in Automatisierungsskripten oder APIs leicht ermitteln.