Forum: Ruby on Rails need to post an email attached file

Posted by Kad Kerforn (kadoudal)
on 2011-07-13 16:56
(Received via mailing list)
I get the email attachment..  as email.part

#<Mail::Part:2167989640, Multipart: false, Headers: <Content-Type:
video/x-m4v; x-unix-mode=0644; name=clipout12_iPhone.m4v>, <Content-
Transfer-Encoding: base64>, <Content-Disposition: attachment;
filename=clipout12_iPhone.m4v>>

and I would like to do a remote POST (using RestClient)  it in a
multipart form  like :

 RestClient.post 'http://localhost:3000/foo', fields_hash.merge(:file
=> File.new('/path/to/file'))

should I store the email.part as a temp file and reuse this temp file
in the post ?
or
is there any way to post directly the content as a file ?

thanks for your suggestions

erwin
Posted by Kad Kerforn (kadoudal)
on 2011-07-13 17:27
(Received via mailing list)
I think I found how to do it

file = StringIO.new(part.decoded)
file.class.class_eval
{ attr_accessor :original_filename, :content_type }
file.original_filename = part.filename
file.content_type = part.mime_type
fields_hash = { :description => "uploaded file", :name => 'test'}

response = RestClient.post 'http://localhost:3000/en_GB/clips',
fields_hash.merge(:file => file)
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.