1
你能告訴我怎樣才能緩存Rikulo Stream中的默認主頁?按主頁我的意思是沒有子路徑(/ xxx)的主域(xxx.xxx.com),甚至不包括'/'。 urimapping設置不允許爲不以'/','。','['或'('和(。*)'開頭的路徑設置過濾器,(cache-control is仍設置爲max-age = 2592000默認主頁)。如何解析Rikulo Stream服務器的主頁?
你能告訴我怎樣才能緩存Rikulo Stream中的默認主頁?按主頁我的意思是沒有子路徑(/ xxx)的主域(xxx.xxx.com),甚至不包括'/'。 urimapping設置不允許爲不以'/','。','['或'('和(。*)'開頭的路徑設置過濾器,(cache-control is仍設置爲max-age = 2592000默認主頁)。如何解析Rikulo Stream服務器的主頁?
它是一個靜態頁面(如index.html的)或RSP頁面?
如果是RSP,你可以指定頭()你喜歡的。例如,
[:header
Cache-Control="no-cache, must-revalidate, no-store, private, max-stale=0, max-age=0, post-check=0, pre-check=0"
Expires="0" Pragma="no-cache"]
如果它是靜態的,有覆蓋最大年齡,ETAG,以及相關的標頭中沒有直接的方法。但是,有幾個選擇。首先,你可以實施你自己的resource loader)。
其次,您實現一個處理程序來設置標題幷包含真實頁面。假設你映射下/ s的HTML文件:
uriMapping: {
r"/s/.*\.html": (HttpConnect connect) {
connect.response.headers..contentType = "text/html"
..add("Cache-Control", "no-cache"); //also other headers
return connect.include(connect.request.uri.path.substring(2));
}
當然,您可以在RSP中實現您的HTML文件。然後,你得到了完全的控制。另外,您可以使用the script tag輕鬆生成適當的鏈接(其中包括簡單的版本控制)。
我們目前使用angularjs作爲前端,當角度UI模塊被移植到飛鏢時,計劃升級到角飛鏢。我們試圖使網頁儘可能靜態,因爲路由在客戶端處理,服務器服務於部分html頁面和休息呼叫。由於該應用程序是基於登錄的,因此緩存首頁將導致網站無響應 - 未經授權的用戶無法訪問受限制的文件和Web服務。如果首頁未緩存,則默認情況下,用戶將被重定向到登錄頁面。 – user2338071
我更新了答案。希望能幫助到你。 –
謝謝湯姆,它完美的作品。 – user2338071