Sử dụng sóng mang cho người tải lên của chúng tôi, chúng tôi nhận được một vài lỗi Excon mỗi tuần từ ứng dụng sản xuất của chúng tôi. Ví dụ:Đường ray: Lỗi Carrierwave/Excon lẻ tẻ
Excon::Errors::BadRequest: Expected(200) <=> Actual(400 Bad Request) excon.error.response :body => "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>IncompleteBody</Code><Message>The request body terminated unexpectedly</Message>
Chúng tôi đã bắt đầu gói quá trình tải lên trong một khối retry và nó luôn luôn dường như làm việc tốt sau khi một cố gắng, nhưng tôi tự hỏi nếu có một giải pháp tốt hơn, vì điều này trở nên khó sử dụng sau một lúc. Dường như với tôi như những lỗi này nên được xử lý ở mức thấp hơn. Có cách nào tốt hơn để xử lý các vấn đề này không?
Dưới đây là cấu hình sản xuất của chúng tôi:
config.storage = :fog
config.root = Dir.tmpdir
config.cache_dir = 'carrierwave'
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['AWS_ACCESS_KEY_ID'],
aws_secret_access_key: ENV['AWS_ACCESS_KEY'],
}
config.fog_directory = ENV['AWS_S3_BUCKET']
config.fog_public = false
config.fog_authenticated_url_expiration = 7.days.to_i
config.enable_processing = true
Và chúng tôi đang sử dụng phiên bản đá quý:
fog (1.27.0)
carrierwave (0.10.0)
excon (0.43.0)
Bạn đã cố khắc phục điều này chưa? – RuiMochila
Sau khi chuyển sang 'carrierwave-aws', chúng tôi chưa thấy vấn đề này nữa. – lobati