2017-05-30 74 views
0

使用案例:我們有客戶端可以使用預先簽名的URL從S3存儲中下載圖片並定期刷新它們。如果沒有改變,我們不需要再次下載圖片。 問題:如果圖片URL可以更改(例如,預簽名URL過期後),我們可以使用ETag和if-none-match標題解決我們的問題嗎?使用Amazon S3的ETag使用情況預簽名的URL

+0

https://stackoverflow.com/questions/3026823/caching-images-with-different-query-strings-s3-signed-urls的可能的複製 – user818510

+0

你不能做一個過期的預簽名URL什麼。 ..它過期了,服務會立即拒絕它,*之前*關於URL或對象的任何其他檢查...所以它不清楚你想要完成什麼,或者你在做什麼大家試過了。 –

+0

我的意思是同一個對象可以有不同的簽名url-s,我不知道我可以使用ETag進行緩存 – mechanikos

回答

0

我們使用Etag和S3預簽名URL成功進行了測試。 如果內容相同,您可以使用預簽名URL中的if-none-match標題發送Etag,並收到304 not modified。無論URL如何,它都可以工作。

  1. 你得到10分鐘後到期URL,並用它來下載圖像。
  2. 然後保存這張圖片的Etag
  3. 一個小時後,當第一個URL過期,你會得到一個第二URL來檢查圖像是否已經改變
  4. 現在你送保存的Etag在頭部與第二URL
相關問題