2012-05-03 70 views
1

我只是想知道,如果这是一个错误,我的错误或者有没有人设法让该工作AWS S3红宝石url_for响应头(自定义文件名和文件类型)

>irb 
>require 'aws/s3' 
>AWS::S3::Base.establish_connection!( 
    :access_key_id => key, 
    :secret_access_key => secret) 

>AWS::S3::S3Object.url_for(
    filename, 
    bucket, 
    :use_ssl => true, 
    :response_content_type=>'text/plain', 
    :response-content-disposition=>'attachment; filename=text.txt' 
) 

这将吐出标识的URL

我可以得到一个URL出这一点,但:response_content_type & :response-content-disposition选择似乎并没有做任何事情。

这些在 http://docs.amazonwebservices.com/AWSRubySDK/latest/AWS/S3/S3Object.html#url_for-instance_method

都记录

有没有人有每个请求头中添加这些运气?还是我做错了?

编辑我想通了:如果有人跑到相同的地方 - 要求正确的宝石不是'aws/s3'它的'aws-sdk'(有两个漂浮在那里,几乎相同的代码 - 我认为后者是旧版本)

+0

请将您的解决方案作为答案发布,稍后再接受:遵循自己的问题是完全可以接受的,如果它首先是一个真正的问题,并且实际上希望将它从问题中解决出来并为新的和尚未解答的问题腾出空间。谢谢! –

回答

3

嗨,大家可以自己回答.. aws-s3aws-sdk的旧版本。即使交换require标题,它们之间的许多代码也可以正常工作。使用aws-sdk来解决这个问题。

+0

其实aws-s3和aws-sdk之间没有共同的祖先。也就是说,他们共享一些接口。 –

+1

Akshat非常感谢你张贴这个。保存了我的一天。 – pixelearth