Ich entwickle eine Rest-API und frage mich:
Ist es eine gute Idee, base64-codierte Daten in Json zu speichern, z. B. zum Hochladen von Dateien? Was , wenn die base64 einige enthält {
, }
, :
die json Inhalt Zeichen und Pausen?
Wenn dies keine gute Idee ist, welche Alternativen werden allgemein als Best Practices angesehen?
rest
json
file-handling
Dimitrios Desyllas
quelle
quelle
application/octet-stream
kann ein Ansatz sein.Antworten:
Base64 ist eine sichere Codierung für JSON.
Der Nachteil bei der Verwendung von Base64 ist, dass es ziemlich ausführlich ist. Dies kann zu einem erheblichen Overhead beim Hochladen von Dateien führen, was einen längeren Upload und eine höhere Bandbreite bedeutet. Wenn es möglich ist, schlage ich vor, ein Binärprotokoll zu verwenden, das JSON-Typen unterstützt. CBOR ist eine beliebte Version , die ElasticSearch für das Hochladen von Dokumenten verwendet. Es gibt auch BSON .
quelle