Я сейчас, в качестве хобби, работаю над своим гемом http_wrapper. И на текущий момент реализую фичу загрузки файлов. Я не очень люблю изобретать колеса, особенно если кто-то уже изобрел отличное круглое колесо, поэтому первым делом начал гуглить возможные варианты решения моей задачи. И вот где начинается забавное: я не нашел ни одного варианта, в котором бы предлагалась правильная загрузка файла с помощью Net::HTTP
. Предлагают использовать готовые обертки (типа Rest Client и httparty) или гемы, реализующие именно функционал multipart/form-data
(например, multipart-post), да даже использовать curl
через системный вызов предлагают. Жуть, в общем.
Все это мне не понравилось и я начал копаться в недрах Net::HTTP
. И в итоге откопал большую тайну (судя по тому, что больше я этого нигде на просторах интернета не нашел), которой сейчас с вами поделюсь: как правильно закачать файл с помощью стандартной библиотеки Ruby Net::HTTP
: Читать дальше →