3
我正在實施Sitecore 8 Web Api。確切地說,我在Sitecore Services Infrastructre中使用ServiceApiController。我想知道如何緩存來自這個控制器的JSON輸出,只有當我從中獲取數據的lucene索引被重建時,它纔會被更新?如何在索引更新時更新Sitecore Web Api輸出的緩存
我還沒有註冊這個控制器作爲控制器渲染,因爲顯然我們不需要這樣做,它只是開箱即用。我只是通過jQuery調用ajax調用來讀取JSON輸出,並且javascript代碼和HTML標記位於MVC視圖呈現內。我想在視圖渲染上設置緩存沒有意義。不是嗎?
我該怎麼辦?
感謝理查德。我雖然有一些設備,可以在ServiceApiController級別上使用。所以,我們可以使用自定義緩存,對吧?順便說一句,如果我只是在後端重建索引而不是發佈呢? – Behrooz
如果您使用自定義緩存,則需要掛接到'publish:end'和'publish:end:remote'事件並在自定義代碼中清除該緩存。如果您使用將由Sitecore清除的HtmlCache。 –
如果手動重建索引,則必須通過重建後運行發佈或使用'/ admin/cache.aspx'管理頁面來清除緩存。 –