Multipart is the way to go.
You can send byte array to your backend and reconstruct the file really easy, that way you'll have tackled SAF too.
Base64 will make the request even bigger than what the image is, also don't forget to pay attention if you need to compress the image before sending it to the backend.