Meldeschein-Kurkarte abrufen (PDF)
Gibt die angefragten Meldescheine als PDFs zurück.
GET import/meldeschein/get-pdf/ |
Parameter
Name | Datentyp | Verwendung |
---|---|---|
meta | object | Meta-Objekt |
meldescheine | array | Array mit Meldeschein-IDs |
Request
Folgendes Beispiel ruft die Daten von zwei Meldescheinen ab.
Request:
{
"meta": {
"objekt": 2049,
"gemeinde": 1
},
"meldescheine": [
553
]
}
Response
{
"meta": {
"requestId": "66f81f62-0942-11eb-bd68-c04a00212a69",
"timestamp": "2020-10-08T10:43:56.496102",
"user": {
"id": 38,
"username": "DemoV",
"alias": "Lisa Mustermann"
},
"gemeinde": 1
},
"response": [
{
"id": 553,
"encoding": "base64",
"pdf": "JVBERi0xLjMKMSAwIG9iaHMgWyAzIDAg....<abgeschnitten>"
}
]
}
PDF dekodieren und speichern
Die Rückgabe des Servers enthält die PDF-Daten als base64
kodierte string
-Werte in der Response. Der'Wert ist jeweil ins response[].pdf
zu finden.
Die übliche Vorgehensweise ist es, den base64 kodierten Wert als PDF-Datei zu speichern und diese dann zur weiteren Verwendung zu geben (z.B. Ausdruck Kurkarte).
Möglichkeiten Base64 Zeicheketten als Binärdateien zu speichern bieten sich in vielen Programmiersprachen.
Code-Beispiele
import base64
# ....
# Die variable Antwort des Servers ist hier in der variable "r" zu finden
for ms in r['response']:
base64_string = ms.get('pdf')
filename = './Beispiel-Meldeschein-%s.pdf' % ms.get('meldescheinnummer')
fh = open(filename,'wb') #lokale Datei im binären Modus zum schreiben öffnen / erstellen.
decoded = base64.decodebytes(base64_string) # Base64 String binär dekodieren
fh.write(decoded) # dekodierte Daten in Datei schreiben
fh.close() # Datei schliessen