[英]Urls in restful webservices
我已經閱讀了這本電子書,並且已經閱讀了您應該嘗試將自己限制為兩個基本URL。 因此,如果您有測驗資源,則可以使用/quizes
和/quizes/{id}
。 然后,您可以使用HTTP動詞進行操作。 但是,當您嘗試遵循這種模式時,如何從服務器中獲得一個隨機問題動態生成的測驗呢?
我知道/quizes?type=random
,但是假設您希望type屬性是可選的,默認為random,並且您已經使用/quizes
路徑列出了所有已保存的測驗。
創建/quizes/generate?type=random
路徑沒有遵循建議,我也認為生成術語不適合,因為它是動詞。
諸如/quizes
類的路徑是否“保留”到返回的集合中(我知道REST不是規范),或者使用/quizes
生成測驗服務器端並返回它完全合法嗎?
/quizzes
應該做的是為您提供URL列表,以便您訪問不同的測驗,因此,假設您已定義/quizzes
返回的媒體類型是JSON(例如,可能是application/json+quiz
這樣的特定類型) :
{
quizzes = [
{ description: "Quiz 1", url: "/quizzes/1" },
{ description: "Quiz 2", url: "/quizzes/2" }
]
}
因此,您可以擁有一個條目,該條目使您可以訪問隨機測驗,可能是這樣的:
{
quizzes = [
{ description: "Quiz 1", url: "/quizzes/1" },
{ description: "Quiz 2", url: "/quizzes/2" },
{ description: "Random", url: "/quizzes/random" },
]
}
這個想法是有一個REST端點,並且所有后續URL都是通過語義媒體類型發現的。 因此,如果您的媒體類型指定將存在一個描述為Random
的條目,該條目將為您提供隨機測驗,則端點使用者可以使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.