Defect #10832
closed
REST Uploads fail with fastcgi
Added by Jeffrey Clark over 12 years ago.
Updated over 12 years ago.
Description
Unable to upload attachments through REST API.
curl --data-binary "@README" -H "Content-Type: application/octet-stream" -X POST -u admin:test http://localhost/uploads.xml
Processing AttachmentsController#upload to xml (for 127.0.0.1 at 2012-05-04 11:52:53) [POST]
Parameters: {"action"=>"upload", "controller"=>"attachments", "format"=>"xml"}
NoMethodError (undefined method `size' for #<Rack::RewindableInput:0x7ffb9b162fd0>):
app/models/attachment.rb:78:in `file='
app/controllers/attachments_controller.rb:70:in `new'
app/controllers/attachments_controller.rb:70:in `upload'
dispatch.fcgi:27
Rendering rescues/layout (internal_server_error)
Files
Webrick appears to work fine. Perhaps a problem related to fastcgi.
- Target version set to 1.4.2
I'm able to reproduce with apache+fastcgi.
Unfortunately the various Rack::Handler's don't handle input all the same way :(
Or maybe (untested):
Index: app/controllers/attachments_controller.rb
===================================================================
--- app/controllers/attachments_controller.rb (revision 9616)
+++ app/controllers/attachments_controller.rb (working copy)
@@ -67,7 +67,7 @@
return
end
- @attachment = Attachment.new(:file => request.body)
+ @attachment = Attachment.new(:file => request.raw_post)
@attachment.author = User.current
@attachment.filename = Redmine::Utils.random_hex(16)
Jean-Philippe Lang wrote:
Or maybe (untested):
Nope :(
NoMethodError (undefined method `read' for #<String:0x7f191b1fbae0>):
app/models/attachment.rb:114:in `files_to_final_location'
app/models/attachment.rb:112:in `open'
app/models/attachment.rb:112:in `files_to_final_location'
app/controllers/attachments_controller.rb:74:in `upload'
dispatch.fcgi:27
Jeffrey Clark wrote:
Nope :(
The patch should work after r9630.
- Subject changed from REST Uploads fail to REST Uploads fail with fastcgi
- Assignee set to Jean-Philippe Lang
- Status changed from New to Closed
- Resolution set to Fixed
Fixed in 1.4-stable (r9653) and trunk (r9652). Tested with apache2+fcgid.
Also available in: Atom
PDF