我正在從Google App Engine服務器提供一些JSON內容。我需要爲ETAG提供內容,以瞭解自上次加載數據以來是否發生了更改。然後我的應用程序將刪除其舊數據並使用新的JSON數據填充其視圖。如何在Google App Engine for Python上設置ETAGS?
self.response.headers['Content-Type'] = "application/json; charset=utf-8"
self.response.out.write(json.dumps(to_dict(objects,"content")))
什麼是最佳實踐來設置響應的ETAG?我是否必須自己計算ETAG?或者它是一種讓HTTP協議做到這一點的方法?
可惜這樣的e-tag本質上是無用的,因爲你必須重建整個響應體來重新計算它。電子標籤的目的是爲了避免必須這樣做,只是爲了查看響應是否仍然是新鮮的。 –
@MartijnPieters刪除重新生成響應的需求很有用,但減少從服務器發送到客戶端的數據也可以產生非常顯着的影響。 –