Как скрыть URL-адрес Rails active storage blob?

#ruby-on-rails #amazon-s3 #rails-activestorage

#ruby-on-rails #amazon-s3 #rails-activestorage

Вопрос:

Я использую S3 для своего хранилища Rails для загрузки документа, который пользователи затем отображают в своем браузере. Однако я не совсем уверен, что мне нравится то, что URL-адрес пути к хранилищу отображается непосредственно в браузере.

Например, когда пользователь запрашивает элемент, который находится в S3, Rails перенаправляет пользователя на URL-адрес S3. Единственное, что мне в этом не очень нравится, так это то, что он сообщает пользователю, что я использую S3, и предоставляет возможность для дополнительного поиска и отслеживания.

Могу ли я каким-либо образом просто скрыть все мои отображаемые элементы хранилища за моим фактическим доменом? Это то, что я могу сделать с Rails, или мне нужно выполнить какую-то другую конфигурацию на стороне сервера?

Ответ №1:

Вы можете попробовать следующее:

 send_data @entity.file.download, filename: @entity.file.blob.filename, type: @entity.file.blob.content_type, disposition: 'download'
 

это не приведет к отображению URL-адреса большого двоичного объекта даже для размещения: ‘inline’