我有一篇文章和作者資源的REST系統。通常,在訪問文章時,我也想知道作者的姓名。我可以通過幾種方法制作文章來實現這一點:A)將作者姓名的副本直接嵌入到文章中;或B)在文章中包含一個URI,指向相應的作者資源。REST資源設計:嵌入相關數據VS鏈接到它?
將作者的姓名直接複製到文章資源中顯然是一個缺點。通過將信息複製到多個資源中,我打開了資源之間的衝突。在作者更新其名稱後,文章資源可能會有他們的舊名稱和作者資源會有新的名稱。
也許如果我不緩存文章這不會是一個問題?但作爲一個實際問題,快速並減少返回服務器的次數是非常可取的,因此緩存在瀏覽器中是我所追求的。
在場景B中,使用URI進行鏈接似乎是正確的,並且對緩存更友好。 但是這會使調用返回到服務器的數量增加一倍:每篇文章都需要對作者進行第二次(串行)提取。所以,用另一種方式很昂貴,特別是如果我們正在討論多個URI到多個其他資源。當一次顯示50篇文章時,這可能會變得瘋狂。
我想聽聽其他人解決這個問題的方式。是否有值得閱讀的「最佳實踐」散文?