我有一個無法更新的資源(事件)。因此,我只允許發佈&獲取操作。 (我沒有選擇PUT,因爲eventId是在服務器端生成的,並作爲響應的一部分返回)。無法更新的資源的REST響應代碼
我已經在輸入中有三個字段的組合,可用於識別唯一資源。
鑑於此,如果有人張貼相同的請求兩次,這就是我期待返回
- 案例1:如果獨特的領域已經存在於數據庫,完整的要求是 正是因爲前一個相同,則我們忽略這個請求(因爲 資源已經存在)。
- 情況2:如果DB中已存在唯一字段但其他部分 請求不同,則發送錯誤響應說不支持 。
什麼應該是正確響應代碼在這兩種情況下,1 &情況下返回2
感謝, 哈里什
一樣,如果該用戶不被允許閱讀,我喜歡你的可能的安全漏洞。儘管這不是我目前的用例。對於案例2,如何使用422? – Harish
響應422特別針對像語義錯誤這樣的情況,在你的情況下,它也不是真的,因爲如果第二個請求是第一個請求,它的語義也是正確的。第二個請求沒有指定超出範圍的參數或類似的東西,所以我會說這不是422. – ChatterOne
謝謝。當然有意義的是,如果第二個請求是第一個請求的話,那麼它就不可能在語法上成爲正確的語法。感謝您的澄清。情況1和情況2將使用200。 – Harish