Module: Ethon::Easy::Http::Putable
- Defined in:
- lib/docspring/ethon_multipart_put_fix.rb
Instance Method Summary collapse
-
#set_form(easy) ⇒ Object
Override set_form to handle multipart forms like POST does.
Instance Method Details
#set_form(easy) ⇒ Object
Override set_form to handle multipart forms like POST does
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/docspring/ethon_multipart_put_fix.rb', line 15 def set_form(easy) easy.url ||= url form.params_encoding = params_encoding if form.multipart? # Use httppost for multipart forms (like POST does) form.escape = false form.materialize easy.httppost = form.first.read_pointer # Override libcurl's default POST method when using httppost easy.customrequest = 'PUT' else # Keep existing behavior for non-multipart forms easy.upload = true form.escape = true easy.infilesize = form.to_s.bytesize easy.set_read_callback(form.to_s) end end |