簡體   English   中英

吸引寧靜的Web服務

[英]Urls in restful webservices

我已經閱讀了這本電子書,並且已經閱讀了您應該嘗試將自己限制為兩個基本URL。 因此,如果您有測驗資源,則可以使用/quizes/quizes/{id} 然后,您可以使用HTTP動詞進行操作。 但是,當您嘗試遵循這種模式時,如何從服務器中獲得一個隨機問題動態生成的測驗呢?

我知道/quizes?type=random ,但是假設您希望type屬性是可選的,默認為random,並且您已經使用/quizes路徑列出了所有已保存的測驗。

創建/quizes/generate?type=random路徑沒有遵循建議,我也認為生成術語不適合,因為它是動詞。

諸如/quizes類的路徑是否“保留”到返回的集合中(我知道REST不是規范),或者使用/quizes生成測驗服務器端並返回它完全合法嗎?

http://apigee.com/about/content/web-api-design

/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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM