我有一个rails 3应用程序,允许用户通过回形针将它们上传到亚马逊s3来共享文件,并且我希望允许其他用户下载这些文件。不过,我的应用程序和Amazon S3之间的某些后处理似乎正在进行。Rails 3带文件上传/下载的回形针
这里是我的代码:
has_attached_file :attachment,
:storage => :s3, :s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => ':id/:style', :bucket => "test_development"
这工作得很好,但是如果我真的去了Amazon S3的开发工具文件的URL只是似乎是:http://s3.amazonaws.com/test_development/1/original没有原来的名称或类型。 [p.attachment.url(:original, false), p.attachment_file_name].join("/")
这将产生:http://s3.amazonaws.com/test_development/1/original/test.pdf
但是,如果我得到这个网址我得到一个神秘的XML错误:
然后,我用这样的尝试
<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
<Key>1/original/About Downloads.pdf</Key>
<RequestId>7E5CC6A01CADF831</RequestId>
<HostId>
4ruFf0JtdalnaIE/SHUAqT8hVYEda9Ul6gxNmYTIAniw7piTN+Q16uKKCzi9yezl
</HostId>
</Error>
我在做什么这里错了吗?我只是想将文件上传到s3而不进行任何处理,然后再次下载..我应该怎么做呢?
谢谢!