【发布时间】:2021-12-02 06:53:37
【问题描述】:
我有一个使用 Spree/Solidus 核心的 Ruby on Rails Web 应用程序(部署在 Google App Engine 上),它连接到 Google Cloud Storage 以进行文件存储。我们的应用程序有一个管理仪表板,我们可以在其中上传与对象相关的图像,并且我们有一个显示这些图像的网页。当我们最近部署该项目时,这些图像最初会显示,但一段时间后它们就无法显示了! 对于控制台上显示的图像,我们收到以下 400 错误:
Failed to load resource: the server responded with a status of 400 ()
当我们检查管理仪表板时,仍然可以看到相同的图像,但它们在主页上显示为损坏。 我们的 Google Cloud Storage 存储桶具有公共访问权限(尽管我认为它并不真正需要它,因为该应用位于同一个项目中,并且我们部署了 GC_access JSON 文件)。
我们正在使用以下代码来显示图像:
<% if image_url = image.try(:url, size) %>
<%= image_tag image_url %>
<% else %>
<span class="image-placeholder <%= size %>"></span>
<% end %>
我将不胜感激有关尝试解决此问题的任何帮助或建议!我不确定还有哪些其他信息可能会有所帮助,但如果您认为有关某事的更多信息可能会有所帮助,我可以添加更多详细信息。
【问题讨论】:
标签: ruby-on-rails ruby google-app-engine google-cloud-storage rails-activestorage