私が構築しているアプリは、ユーザーがファイルをアップロードできるようにします。ファイルはプライベートバケットのAmazon S3にアップロードされます。Amazon S3、アップロードからオブジェクトの可用性への遅延を処理する方法
その後、ユーザーが期限切れURLの時間を作成することによって、我々は許可され、ファイルをダウンロードすることができます。
AWS::S3::S3Object.url_for(attachment.path(style || attachment.default_style), attachment.bucket_name, :expires_in => expires_in, :use_ssl => true)
私たちが抱えている問題は、AWS ::経由可用性へのアップロードからの短い遅延があるということですS3 :: S3Object.url_for。ユーザーがアップロード直後にファイルをダウンロードしようとすると、
215412-NameError (uninitialized constant Attachment::AWS):
215413- app/models/attachment.rb:32:in `authenticated_url'
215414- app/controllers/attachments_controller.rb:33:in `show'
この遅延をどのように処理するかについてのアイデアはありますか?
おかげ
遅延があることがわかっている場合は、すぐにそれを使用してみてください。私はまた遅れに気づいていない。あなたが要求後100msの遅れについて話している場合を除きます。そして、アップロードした直後にオブジェクトで何かをしようとしています。 – Layke
この遅延は発生しません。オリジナルの画像を処理する必要があるため、アップロード後すぐに画像アップロードを利用できます。 – iwasrobbed
そのスタックトレースは、アマゾンの問題よりもルビーの問題のように見えます –