我有幾個Web服務調用,我想不出一個用REST做的好方法 - 他們覺得像'做'方法而不是數據操作。這個REST實現應該使用哪些資源?
一個只是說服務器「重新發送確認電子郵件給用戶xyz」,所以在SOAP中它可能是ResendConfirmationEmail(user)
。這在REST中如何實現?什麼資源名稱應該在URI中使用?
另一種情況是我們用一些虛擬數據初始化數據庫並返回結果表和它們的行數,所以在SOAP中它可能是InitializeDatabase()
。再說一次,在REST中URI應該是什麼樣子,並且這仍然可以作爲一個調用完成(初始化並返回數據庫摘要信息),還是必須將它分成兩個調用(一個用於初始化,一個用於獲取數據庫彙總信息)?
嗨,謝謝你的回覆。你可以在PUTTING上擴展一下到'/ my-app-name'嗎?你會如何建議我向服務器表明我想重置數據庫,而不是爲該應用程序執行其他操作? – Jez 2012-03-03 19:15:19
因此,在這種情況下,我想我會將每個「配置」或「服務」視爲資源。你可以使它更像'/ my-app-name/db',甚至只是'/ service/db'或'/ conf/db'。這樣你也可以管理與應用程序相關的其他服務。一個REST風格的應用程序本身是一個RESTful應用程序,這是一件非常美妙的事情。 – nategood 2012-03-03 19:32:09
我明白將URI映射到數據庫概念的想法 - 我的意思是,我正在向該URI注入什麼?不是數據庫的內容,因爲我只是想告訴它「初始化數據庫」,而不是實際提供虛擬數據。 – Jez 2012-03-03 19:35:30