13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/support/multipart_hack.rb', line 13
def multipart_params=(param_hash={})
boundary_token = [Array.new(8) {rand(256)}].join
self.content_type = "multipart/form-data; boundary=#{boundary_token}"
boundary_marker = "--#{boundary_token}\r\n"
self.body = param_hash.inject('') do |memo, (param_name, param_value)|
memo << boundary_marker
case param_value
when File
file_to_multipart(memo, param_name, param_value)
else
memo << text_to_multipart(param_name, param_value.to_s)
end
end << "--#{boundary_token}--\r\n"
end
|