Ответ 1
Просто отправьте двоичные данные как есть в теле POST, но с соответствующим заголовком Content-Type (например, image/jpeg) - я думаю, что это самый "RESTful" способ.
(В общем, как правило, при проектировании служб REST, чем больше вы работаете с HTTP-протоколом as-is вместо того, чтобы пытаться наложить что-то ненужное и сложное поверх него, как base64, тем лучше. конечный протокол RESTful и Content-Types допускают разные "представления" в "Передача репрезентативного состояния" )
Другая возможность иметь в виду - принимать URL-адреса изображений вместо реальных физических файлов. Это усложняет автономные приложения, например, прочитайте изображение с пользовательского диска, но упростите приложения типа mashup, где изображение может быть возвращено как URL-адрес из другой службы.
Вы можете разрешить оба варианта, конечно.