2013-05-11 19 views
0

我已經看到一些網絡服務使用指向另一個資源的鏈接進行響應,而不是在請求的資源中內聯資源數據。這種方法何時是首選?或者我很好只使用JSON例如在我的迴應?不創建與其他資源的鏈接...何時在REST響應中放置資源的URL?

{ 
    ... 
    user: "api/user/6" 
    ... 

} 

回答

0

REST響應正文或標題中提供的URL通常是引用URL。假設您通過調用REST服務來創建一個實體,並且您想知道如何在稍後檢索該實體的詳細信息。因此,一般創建實體時,它們都與唯一的ID相關聯。此Id通常用於參考URL以獲取該實體。這裏是例子:

CREATE 

    /api/entity/ : POST to create an entity 

RESPONSE : 200 OK response body/header 
/api/entity/1 

其中1所以現在對於實體生成的ID,你可以做一個GET來檢索新創建的實體

GET : /api/entity/1 
RESPONSE: details of the entity. 
+0

因此,你總是使用json,xml等在actjal響應?你不使用鏈接? – LuckyLuke 2013-05-11 13:18:47

+0

這裏的鏈接是什麼意思?我們正在討論REST API,而不是網頁 – 2013-05-11 14:17:26

0

只需添加上的完整細節@ Juned Ahsan回答,
在大多數情況下,對REST服務POST操作的響應代碼應爲201創建
在這種情況下,根據HTTP 1.1 protocol

新創建的資源可以通過URI(或多個)被引用返回在響應的實體,以最特定的URI用於由位置給出的資源標題字段。