2016-09-29 138 views
0

我正在開發一個帶有C#後端API的AngularJs 1.3.7前端應用程序。最近剛剛添加緩存到服務器端,現在導致頭痛。由於Get請求在執行一次請求後將緩存控制標頭設置爲瀏覽器,因此緩存API響應。緩存數據後,在服務器控制器發出任何POST/PUT/DELETE請求後,後端會正確地使緩存失效。問題是,如果請求(POST/PUT/DELETE)設置爲相同的URL,瀏覽器(在我的情況下,Chrome瀏覽器)只會刷新緩存。瀏覽器200(緩存)強制重載


工作示例序列:GET www.bestGames.com/games - > POST www.bestGames.com/games - > GET www.bestGames.com/games(高速緩存被清除,且數據再更新正確)。

不工作:GET www.bestGames.com/games - > PUT www.bestGames.com/games/20 - > GET www.bestGames.com/games(不更新緩存,顯示舊數據)。

不工作:GET www.bestGames.com/games - > PUT www.bestGames.com/games?id = 20 - > GET www.bestGames.com/games(不更新緩存,顯示舊數據)。

工作:GET www.bestGames.com/games - > PUT www.bestGames.com/games - > GET www.bestGames.com/games(緩存被清除並且數據被正確地重新更新)。

那麼,有沒有其他辦法可以刷新瀏覽器的緩存以外:「=隨機」

  • 添加類似以GET請求
  • 增加一個額外的請求www.bestGames.com/games只是爲了清除瀏覽器緩存。

回答