6

s3から取得したダウンロード可能なオブジェクトでクライアントにサービスを提供するために、ドキュメントコントローラにダウンロードアクションが呼び出されました。しかし、OpenURIは、クリップクリップのURLを解析するのに問題があるようです。このURLはブラウザーで問題なく閲覧できますが、コントローラーで開こうとすると403 Forbiddenエラーが表示されます。 URLを開いたときに、OpenURI :: HTTPErrorアクションの最初の行にアップ撮影403禁止 -OpenURI :: HTTPError 403禁止 - S3に保存された資産のペーパークリップURLを開く

documents_controller 

    def download 
    data = open(Document.find(params[:id]).upload.url) 
    send_data data.read, :type => data.content_type, :x_sendfile => true 
    end 

例のURLは

"https://s3.amazonaws.com/mybucket/documents/1/Screen_Shot.png?1372238888" 

エラーとなります。 それは何だろうか?

答えて

4

URLが文字列形式でない場合、403エラーが発生する可能性があります。似たような例の文字列補間を使用して私のために働いた添付ファイルを郵送する:

doc = order.document 
attachments["Order.pdf"] = File.read(open("#{doc}")) 
関連する問題