Próbuję dowiedzieć się, czy mogę pobrać przeglądarki do buforowania obrazów z podpisanymi adresami URL.Buforowanie obrazów z różnymi ciągami zapytań (adresy URL podpisane przez S3)
Potrzebne jest wygenerowanie nowego podpisanego adresu URL dla każdego żądania (ten sam obraz, ale z zaktualizowanym podpisem), ale niech przeglądarka nie będzie go ponownie pobierać za każdym razem.
Zakładając, że nagłówki związane z pamięcią podręczną są ustawione prawidłowo, a cały adres URL jest taki sam, z wyjątkiem ciągu zapytania, czy istnieje sposób, aby uczynić go przeglądarką w pamięci podręcznej?
Adresy URL będzie wyglądać następująco:
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297463
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297500
Planujemy ustawić e-tagów być md5sum, więc będzie to przynajmniej dowiedzieć się, że to ten sam obraz w tym momencie?
Moją inną opcją jest śledzenie, kiedy ostatnio wydano adres URL, a następnie zacznij podawać nowe nieco przed wygaśnięciem starych, ale wolałbym nie zajmować się informacjami o sesji.
Czy wiesz, że przynajmniej sprawdzi tag e-tag i nie pobierze go ponownie? –
Nagłówek ETag jest wysyłany przez przeglądarkę do serwera tylko wtedy, gdy znajdzie plik w jego pamięci podręcznej (i jeśli oryginalny plik miał wartość ETag). Więc jeśli nie może go znaleźć w pamięci podręcznej (której nie będzie, jeśli adres URL się zmienił), nie ma żadnej wartości ETag, aby wysłać żądanie. –
Reguła przepisywania adresów URL ponownie uczyniłaby podpis S3 bezużytecznym, ponieważ serwer WWW automatycznie zapewniałby link, który nie wygasł. Następnie możesz również oznaczyć pliki w S3 jako "publiczne". (Następnie, aby uzyskać dostęp do plików, nie jest wymagany podpis) – Tarnschaf