我正在将现有应用程序升级到Rails 5.2 .
旧应用程序正在使用Paperclip进行文件存储,我正在尝试将其移至ActiveStorage .
我的应用程序公开了一个API,允许用户安全上传文件(使用密钥/密钥对签名请求) .
当我安装ActiveStorage时,我发现了几条新路线
rails_service_blob GET /rails/active_storage/blobs/:signed_id/*filename(.:format) active_storage/blobs#show
rails_blob_representation GET /rails/active_storage/representations/:signed_blob_id/:variation_key/*filename(.:format) active_storage/representations#show
rails_disk_service GET /rails/active_storage/disk/:encoded_key/*filename(.:format) active_storage/disk#show
update_rails_disk_service PUT /rails/active_storage/disk/:encoded_token(.:format) active_storage/disk#update
rails_direct_uploads POST /rails/active_storage/direct_uploads(.:format) active_storage/direct_uploads#create
如何禁用这些路由以禁止随机上传到我的应用程序 .
1 回答
要保护删除所有没有副作用的ActiveStorage路由,请将其添加到config / application.rb:
我建议不要将config / application.rb中的
require 'rails/all'
替换为从rails源代码中获取的rails gems列表,这通常是推荐的 .