我正在使用一個遵循標準的REST api,該標準定義了回應應包括自我、上一頁、下一頁和最后一頁鏈接。
{
"鏈接" : {
"自己" : {
"href" : "https://myhost/api/2"
},
"前":{
"href": "https://myhost/api/1"
},
"下一個" : {
"href": "https://myhost/api/3"
},
"最后" : {
"href": "https://myhost/api/4"
}
},
處理一個或多個鏈接是多余的情況的最佳做法是什么,例如
在這樣的情況下,是否應該洗掉那些不受歡迎的鏈接?還是應該將它們設定為當前頁面?
例如,如果只有一個頁面,我是否應該選擇
{
"鏈接" : {
"自己" : {
"href" : "https://myhost/api/1"
},
"前":{
"href": "https://myhost/api/1"
},
"下一個" : {
"href": "https://myhost/api/1"
},
"最后" : {
"href": "https://myhost/api/1"
}
},
或者
{
"鏈接" : {
"自己" : {
"href" : "https://myhost/api/1"
},
"最后" : {
"href": "https://myhost/api/1"
}
},
uj5u.com熱心網友回復:
擁有多個鏈接關系是完全合理的,因為它針對的是同一資源。
僅僅為了保持一致的模式而將鏈接關系與垃圾資料包括在一起,這就明顯不太合理了。
200 OK
Content-Type: application/json
Content-Location: /1
{
"鏈接" : {
"自己" : {
"href" : "/1"
},
"第一個" : {
"href":"/1"
},
"下一個" : {
"href":"/2"
},
"最后一個" : {
"href":"/2"
}
}
}
在這里,self和first,具有不同語意的鏈接關系具有相同的目標,這是完全合理的。 同樣地,當我們碰巧在距離行尾一頁時,next和last有相同的目標也是完全合理的。
但是prev鏈接關系的語意對于一個已經在行首的頁面來說是沒有意義的。
類似地,
200 OK
內容-位置。/this-collection-has only-one-item
Content-Type: application/json
{
"鏈接" : {
"自己" : {
"href" : "/this-collection-has only one-item"
},
"第一個" : {
"href" : "/this-collection-has only one-ite-item"
},
"最后" : {
"href":"/this-collection-has only one-item"
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/309953.html
標籤:
上一篇:如何處理WordpressRESTAPI的未捕獲例外?
下一篇:倒轉一個給定的數字
