The only way to transfer binary data through text base data transmision formats like xml or json is converting a byte array to base64 string representation which adds a 30%-33% overhead when transmitting the data to the server. The server output should be lightweight already after data is processed cause a path link is returned instead of a base64 string representation.
In consideration for test and design:
- Compression (gzip, brotli)
- BSON
- Streams