[英]REST method that does to GET what PATCH does to PUT
PATCH
只允許更新資源的某些字段,導致部分更新,而PUT
更新整個資源。 GET
僅獲得完整的資源。
如果所述資源非常繁重並且包含很多字段,是否存在用於部分查詢資源的RESTful
約定?
可能是有關URL中查詢的約定嗎? 還是另一個偽資源的定義?
沒有其他方法專門用於僅獲取一部分資源。 以我的經驗,有兩個簡單的選擇。 (我認為第二種選擇更好,但是那里可能會有分歧。)
使用查詢參數可以選擇要返回的屬性。
GET /basket/17
{
"blueberry": 5,
"grape": 7,
"watermelon": "<base64 encoded file>"
}
GET /basket/17?p=blueberry&p=grape
{
"blueberry": 5,
"grape": 7
}
資源的所有重屬性都變為單獨的資源,主資源具有指向它們的鏈接。
GET /basket/17
{
"blueberry": 5,
"grape": 7,
"watermelon": "/basket/watermelon/17"
}
GET /basket/watermelon/17
<bytes of file>
您可以定義一個自定義范圍單位來表達您的語義並使用GET。 參見http://greenbytes.de/tech/webdav/rfc7233.html 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.