我正在使用RESTlet爲一組相關資源設計RESTful API。在RESTful API中表示關係
例如:
人(/人/ 124)資源有一個屬性 「favoriteThing」,可能是汽車,食品,玩具。
現在讓我們說一個API的用戶想要通過執行POST到/ person/124/favoriteThing URL來更新這個屬性。
但是,爲了處理這個請求,我需要在Datastore中記錄這個新的關係(需要一個Key(Kind,Id))。
所以我有兩個令人不安的選擇:
1)預計在POST的主體中的URL(這似乎RESETful) 但我怎麼能幹淨地從網址到數據存儲的關鍵翻譯,需要(種類,ID) 。
2)預期(種類,ID)在POST(很容易) 的身體,但這種允許不是URL以外的東西,作爲一個資源標識符的API
什麼是最RESTful的解決辦法這個問題? 也許不是我所考慮的。
我使用的Java與Restlet框架。但關鍵的想法是一樣的。所以聽起來像正確的解決方案是提出某種URI->鍵映射機制,並且絕不暴露API以外的字段的ID。 –