为什么Google Storage不接受从Rails Active Storage直接上传?

时间:2019-02-21 20:01:21

标签: ruby-on-rails google-cloud-storage

我在应用程序中使用了Google云存储。直到上周一切正常,我什么都没做,现在我的文件不再被发送到存储设备中了。

当我提交文件的表单时,会显示以下消息。

enter image description here

,并且在控制台中有一个显示该链接的链接 enter image description here

一件奇怪的事是我通常可以从Rails Console发送图像

config.logo.attach(io:File.open(Rails.root.join('public/images/default.png')), filename: 'default.png', content_type:'application/png');

如果使用本地存储,一切也可以正常工作。

使用Ruby 2.5.1,Rails 5.2.2和带有直接上传功能的Active Storage。

更新 我的表格

<%= form_for @config, multipart: true do |f| %>
    <div class="row  border-bottom white-bg dashboard-header">
        <div class="col-lg-12">
            <h2>Configs</h2>
        </div>
        <div class="col-lg-12 mb-lg-5">                
            <%= image_tag f.object.logo, clas: 'img-fluid' if f.object.logo.attached? %>
            <div class="form-group">
                <%= f.label :logo %>
                <%= f.file_field :logo, direct_upload: true,  class:"form-control form-resource" %>
            </div>
            <button type="submit" class="btn btn-block btn-primary">Salvar</button>
        </div>
    </div>
<% end %>   

当我删除direct_upload: true时,效果很好,但我不想删除此功能

1 个答案:

答案 0 :(得分:1)

通过配置CORS(跨域资源共享)解决了

https://cloud.google.com/storage/docs/cross-origin