簡體   English   中英

Rails ActiveStorage 變體 url

[英]Rails ActiveStorage Variants url

我正在嘗試創建一個 api 來獲取模型的原始圖像和其他變體。 現在我沒有將附件存儲在外部存儲上,但我計划將來將它們保存在 S3 上。

現在我想問哪種是獲取圖像 url 的最佳方式?

如果使用url_for結果是: /rails/active_storage/blobs/redirect/.../rails/active_storage/representations/redirect/...對於變體,

processed.url正在返回/rails/active_storage/disk/...

_model.jbuilder

json.image url_for(model.image)
json.image_thumbnail url_for(model.image.variant(:thumbnail).processed)
json.image_icon model.image.variant(:icon).processed.url

我建議不要讓存儲的 URL 使用 activeStorage 的代理 url 並且不發出重定向。

這允許存儲提供商更改,理想情況下,如果您在 AWS 上,您可以使用像 CloudFront 這樣的 CDN 緩存此響應:

json.image_thumbnail rails_storage_proxy_path(model.image.variant(:thumbnail))

有關更多信息,請訪問: https://blog.saeloun.com/2021/06/22/rails-active-storage-proxy.html以及指南: https://edgeguides.rubyonrails.org/active_storage_overview.html#代理模式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM