![](/img/trans.png)
[英]How to embed images and attach files from spring boot resources folder
[英]How to DRY with embed resources
我目前正在設計一個將由ReactJS應用程序使用的REST API。 兩個實際端點如下:
/species
id
types
[name, name] // each specy has 2 types, contained in an array
/types
name
我們可以看到,我們有一個端點,它提供了所有type
資源的列表,而species
端點提供了特定type
。
在我的ReactJS應用程序中,我將有一個Select字段,其中包含types
列表(通過/types
端點獲取),以及從/species
獲取的所有species
的List。 然后,用戶可以通過在“選擇”字段中選擇類型來過濾物種。
在Select組件中維護types
列表仍然是DRY,並且在Specy
組件數組中有species
列表嗎? 或者我應該找到一種方式來注入types
從自己的終端獲取specy
?
如果您只有一個/species
端點並且您創建了所有類型的列表,則無法覆蓋分配了零種類型的情況。 這可能是也可能不是問題。 您還必須始終加載所有物種以獲得完整的類型列表。 這可能會浪費很多帶寬。
相反,請考慮以下方法:
端點/types
為您提供所有可用類型的列表,這是您最初填寫下拉列表所需的全部內容。 現在,一旦用戶選擇了特定類型,您就可以調用endpoint /types/{typeName}/species
,它會為您提供分配給{typeName}
類型的所有物種的列表。 同樣,您只是加載用戶想要查看的數據塊。
使用這種方法,您可以避免在應用程序達到其目的之前必須在前端聚合數據並且必須下載完整的數據集。
旁注:物種的單數也是物種 ,而不是物種。 :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.