2015-05-27 33 views
0

我創建的服務基本上爲用戶身份驗證發出一組問題(即您的寵物的年齡),並且可以驗證答案(但必須在問題的2分鐘內完成被呈現)。踢球者是問題的表述是一個漫長的過程,所以我想有一個單獨的電話讓它走向異步。針對問答服務的正確REST服務結構

...呼叫#1 POST \用戶{用戶} \ challengerequest - 創建的要求,需要幾分鐘的時間,然後返回請求ID

...然後輪詢撥打#2 GET \用戶{user} \ challengerequest {requestID} - 返回實際問題,2分鐘計時器啓動

...調用#3 POST \ users {user} \ challengeresponse {requestID} - 接受響應,驗證答案,並且如果事情有效或不合適,則返回。

我目前不喜歡的是: - 我第一次調用GET,一個計時器被啓動,我相信在理論上這就像一個更新,可能不應該從GET - 這些感覺像暫時的資源,可能不適合RESTful實施?

我很想聽聽您對實施的看法。我應該重新評估什麼?謝謝!

回答

0

什麼我不喜歡這個目前: - 第一次我的GET被調用,一個計時器被啓動,我相信理論上這就像一個更新,可能不應該從一個GET - 這些感覺像暫時的資源,可能不適合RESTful實施?

我同意100%。 GET should be idempotent。在這種情況下,它不是。我認爲使用POST開始提問可能是首選。這也告訴下游服務器不要緩存請求。