我目前正在開發一個具有發送資源的項目。REST API - 通用或特定資源
假設URI看起來像這樣只有POST動詞的http://api.somename.com/thingssender。
隨着時間的推移,這已成爲一種資源,在有效載荷中有幾個「可選」元素只適用於發送一種類型的東西。
目前這個資源處理兩種不同類型的事物(ThingA和ThingB),但是也隨着子元素的內容而變化。因此,例如,您可以將許多事情或一件事發送給一羣人。
需求已經出現,需要一個ThingC。考慮到這個端點可能會在將來使用有效載荷中的可選數據來使用ThingD,我開始質疑這種「全部」資源。
我擔心資源的複雜性不斷增長,不僅對於開發人員而且對於使用REST API的客戶端來說。對我來說,這隻會造成混淆,並不會創造最佳體驗(對開發人員和客戶來說都是如此)。
什麼是人們對創建通用端點與特定端點的想法?
因此,一個特定的端點發送ThingCs(http://api.somename.com/ThingsCSender)。它向我發出了單一的責任,仔細考慮底層的實現不應該導致任何重複的功能。
(給出的例子不是在項目真正的概念或資源:P)
乾杯