2014-10-28 46 views
0

我設計一個RESTful接口有點分層數據:RESTful的URI:/ REST /場/模塊/ prblem /解VS/REST /解決方案

course > module > problem > solution 

但我不能決定什麼URL來訪問「解決方案「資源應該是。這是兩個選擇我之間進行選擇,例如,檢索與全球唯一的PK = 3的解決方案:

/courses/2/modules/5/problems/2/solutions/3 
/solutions/3/ 

任何意見,在其上兩個最好?

回答

0

每當我不得不拿出網址,我總是問自己(在這方面)

解決資源可以存在沒有問題,模塊或課程?

是 - >/solutions/3

否 - >/courses/2/modules/5/problems/2/solutions/3

如果需要解決一個問題存在,即它屬於一個問題,這是毫無意義的使用短網址。


另一種方式在它樂:
在後端,你需要以一個問題的參考,以便能夠獲取的解決方案?

否 - >/solutions/3

是 - >/courses/2/modules/5/problems/2/solutions/3

+0

謝謝,這是有益的!那麼有人需要訪問所有解決方案的情況呢?通過第二種選擇,他們可以簡單地使用GET /解決方案,並獲得所有解決方案,第一種選擇是......? – 2014-10-28 19:48:07

+0

@SteveK通過一個請求或多或少地獲取所有解決方案的能力表明解決方案是一種可以獨立存在的資源。因此,那麼長的網址沒什麼意義:-)(或者你必須讓你的後端,以便它收集所有課程和所有模塊,所有問題和屬於他們的所有解決方案,但這將是低效的) – 2014-10-28 19:51:47