2011-10-17 101 views
3

在支持多個帳戶理想的RESTful API,應該每個資源有它在整個系統中唯一的標識符,或者是確定的,如果該標識符是它屬於特定帳戶獨特。RESTful API中每個資源的唯一標識符?

是否有任何專業人員缺點爲每個情況?

舉個例子。

這將是從REST原則罰款?

http://api.example.com/account/1/users/1 
... 
http://api.example.com/account/50/users/1 

或者會採用這種方法嗎?

http://api.example.com/account/1/users/{UNIQUE_IDENTIFIER} 
... 
http://api.example.com/account/50/users/{ANOTHER_UNIQUE_IDENTIFIER} 

回答

2

您可以通過始終具有第一用戶爲1。有人就知道,任何帳戶也將有一個用戶1.我不是說你應該只通過隱藏的隱藏的用戶ID,但爲什麼可以很容易泄露的有效用戶數讓別人在另一個帳戶中找到用戶ID?

2

所有真正重要的是每個資源都有唯一的標識符。您的兩個例子實現這個目標,所以你似乎是好(REST風格而言)

我看不出有任何令人信服的理由使用一個比其他。我會選擇一些對您的實施更有意義的東西。

2

由於,從使用REST API的外部系統的角度來看,整個地址應被認爲是在「標識符」該資源對象,所以你的第一個例子是細。