2016-10-04 22 views
0

我想要做的是我有三個不同的客戶端(A,B,C)託管的一組三個網站。其中一個網站(即B)提供有關網站A的頁眉和頁腳的信息。我想通過HTML的JSON響應從網站B獲取信息,以在網站A和網站C上顯示導航。如何緩存JSON響應以生成用於導航和品牌化網站的HTML?

我的低調是獲得響應是JSON並將該信息保存在緩存文件中以生成HTML。

我的理解是否正確?我怎樣才能做到這一點?有一個更好的方法嗎?

+0

你想從你的控制器緩存HTML結果或JSON結果? – Guillaume

+0

@Guillaume控制器將返回JSOn結果,我想將緩存的數據呈現爲HTML。 –

回答

0

基本上,如果你想從你的控制器的動作緩存JSON結果,你可以使用OutputCache屬性:

[OutputCache(Duration = 10)] //Duration is in seconds 
public ActionResult GetMyJsonData() { 
    var myData = new Data(); 
    return Json(data); 
} 

您可以將相同的屬性上你的行動,返回的HTML。

+0

關鍵是我們如何訪問第三方應用程序中的緩存數據。我已將網站A導航HTML保存在緩存中,應用程序在第三方網站上實施了單一登錄。第三方網站如何獲得緩存的HTML並在運行時在其網站上顯示緩存的HTML。 –

+0

你沒有提到這個。您的第三方網站必須在第一個網站上對「GetMyJsonData」進行網絡調用。另一個解決方案是使用Redis創建共享緩存策略。 – Guillaume