使用Rails和Backblaze B2(S3)上传图像时状态为0

时间:2019-05-12 15:22:25

标签: ruby-on-rails amazon-s3 cloud-storage

当我尝试在Rails应用程序上上传照片时,出现此错误“错误存储“ image.jpg”状态:0”我将ActiveStorage与基于Amazon S3的Backblaze B2一起使用。我已经设置好了存储桶。

我尝试过更改区域,但是什么也没发生。

这是在我的storage.yml中:

backblaze:
    service: S3
    access_key_id: keyID from my account
    secret_access_key: master key from my account
    region: us-east-1
    bucket: my bucketID
    endpoint: b2 upload url I got from b2_get_upload_url
    force_path_style: true

我在开发和生产环境中都设置了config.active_storage.service = :backblaze

这是在我的表单中输入文件的代码:

<%= f.file_field :image, direct_upload: true, multiple: false %>

我想在我的存储桶中看到我发布在文件浏览器中的图像,但该图像没有上传。

1 个答案:

答案 0 :(得分:0)

状态0(根据我的经验)与未使用CORS有关。我们使用Azure作为我们的存储平台(使用Rails / ActiveStorage),根本原因是Blob容器未配置CORS策略。我不确定这在Backblaze中如何工作,但是如果您配置了CORS策略并添加您使用Rails应用程序的域(启用了PUT / POST),那应该会有所帮助