我需要管理非常大的元素在我的RESTFul設計。 我試圖以一種我可以吐出這些元素的方式應用「分割等等」方法,但是它導致了最小的元素,但它們仍然太大。RESTFul管理巨大的資源,陳述和預測
- 所以有兩個選擇,我可以使用,我想問你們這個想法。
關於「表示法」我可以使用不同的URI來管理它們。例如, /API/resourcex /對資源的最小表示X /API/resourcex_big /對資源X /API/resourcex_full /整個資源X
ELSE
的一大表現我可以用分層方式 /API/resourcex/ /API/resourcex /大 /API/resourcex /全
你認爲什麼是語義correnct?我選擇第一個,因爲我想保留資源的「子元素」的層次關係。
例如,我想用例如。/api/resourcex /對於資源x的列表,然後使用resourcex_big/{id}作爲從resource_x列表鏈接的表示作爲目標詳細信息。然後將resource_full用於其他類型的表示,例如全部細節的請求。
說有一點2是:我需要創建一個聰明的東西,以做一個動態投影的資源。這是因爲代表對於客戶來說太大,我需要選擇一些數據點來顯示最適合其需求的數據點。 這裏我的問題是:哪個是投影請求的最佳URI格式?再一次,更好的是一種分層的方式(如在下面的例子中)或查詢字符串?
-- Creation of a projection
**> POST /projection/ HTTP/1.1**
{ resource:」resourcex」, 「name」: true, 「price」: true }
**< HTTP/1.1 201 Created**
Location: http://www.sample.org/api/projection/123 (absolute url)
-- Request of a projection
**> GET /resourcex/999/projection/123 HTTP/1.1**
據我所知,我們可以在相同的資源的別名有不同的URI點。據我所知,我認爲我們可以使用資源的表示,這些資源是我們想要公開的資源的抽象。也許我錯了,但這些都是那些URI的設計(約單個資源的不同表示的第一部分)下的基本思路。 感謝您的回答:) – franco
這就是說,你還可以看到一個預覽圖像作爲原始資源的修改版本,但在這種情況下,我將提供原始資源調用時'http://example.com/resource/'。這也將是該位置的頭中返回的一個,即便如此,你可以在修改後的版本使用不同的URI訪問資源。但我認爲這取決於你如何看待它:) –
SimonSimCity