Рельсы Active Storage Возврат 404 - PullRequest
0 голосов
/ 16 октября 2019

На одной из моих защищенных пользователем страниц я загружаю изображение через активное хранилище, которое сохраняется на S3. Изображение обычно отображается, но у меня есть случаи, когда изображение может не отображаться и возвращает 404. Мои изображения S3 являются частными, поэтому в каждом запросе есть подпись, срок действия которой истекает через 5 минут с URL-адреса большого двоичного объекта, перенаправленного на S3URL активаНапример, вот мой URI BLOB-объекта:

/rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZ0VCIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--23ec7c1b868b6e5353eaebb8afeb4480c7b6d552/Burritos%20combo.png

И URI моего ресурса на S3:

/cKG5HjHhh6Xr5aK8yMhTNha8?response-content-disposition=inline%3B%20filename%3D%22Burritos%20combo.png%22%3B%20filename%2A%3DUTF-8%27%27Burritos%2520combo.png&response-content-type=image%2Fpng&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY2U3BTBLBIJ7U7R4%2F20191016%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20191016T170614Z&X-Amz-Expires=300&X-Amz-SignedHeaders=host&X-Amz-Signature=e6a1aa2b06e65e9fc31ca9d882217ce21f3d71593d1e5d9329afb46b2fd930b9

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

  response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
  response.headers["Pragma"] = "no-cache"
  response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...