簡體   English   中英

在 API REST 中獲取資源的不同端點

[英]Different endpoints to get a resource in a API REST

我有一個帶有GET端點的 REST API 來根據 ID 檢索產品。 現在我需要基於另一個屬性檢索產品,我不知道我是否必須使用相同的端點並在那里處理多個案例或編寫不同的端點,每個案例一個。

謝謝!

假設你有

GET /product/{id}

並且您希望能夠通過其他屬性查找產品。 如果該屬性唯一標識了您可以執行的產品:

GET /product?someOtherAttribute=foo

返回

302 FOUND
Location: /product/5

如果您想避免往返,您可以直接返回產品的內容,但正如您指出的那樣,您的 controller 中可能需要額外的邏輯。

如果該屬性不能唯一標識產品,我建議使用分頁集合響應:

GET /products?someOtherAttribute=foo

返回

200 OK
{
   products: [{
       url: "/product/5"
   }, {
       url: "/product/6"
   }]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM