這里的資源是一個日志類型,它將創建 5 個不同的記錄,一個用于天氣、位置等……它們都將共享關聯。據我了解,慣例是為每個資源創建一個帖子,但如果這些資源需要其他記錄的外鍵,我不知道如何跟蹤與該日志相關的所有記錄的 ID。現在,我正在發送在單個請求中創建所有資源所需的所有數據,如果出現錯誤,則不會創建任何數據,因為我將使用事務。那是慣例嗎?
1 回答

楊魅力
TA貢獻1811條經驗 獲得超6個贊
慣例是為每個資源創建一個帖子
當一個對象受一個用戶操作影響時,當您有一個簡單模型時,此約定非常有效。該模型非常普遍,并且在每本 REST 書籍/文章中都有實現。
現實要復雜得多,您的問題就是一個很好的例子。為每個表實現 PUBLIC API 是眾所周知的,不幸的是反模式廣泛傳播:
https://martinfowler.com/bliki/AnemicDomainModel.html
根據經驗,圍繞您的業務問題構建您的解決方案,而不是圍繞技術框架或模式。
現在我在一個請求中發送創建所有資源所需的所有數據
這聽起來是個不錯的解決方案。一項業務操作 -> 一次 API 調用 -> 一項數據庫事務。它很好也很簡單。如果沒有必要,不要讓它變得更復雜。
- 1 回答
- 0 關注
- 120 瀏覽
添加回答
舉報
0/150
提交
取消