2012-08-16 150 views
0

我們正在制定「平安」的東西輸出類型。我們在OSGI上使用Jersey(Adobe的CRX,其中包含Apache Felix)。該API規格想出了一些事情處理衝突的RESTful請求,像如果客戶端發送標題接受:應用/ JSON和請求URL是http:// * /myresource.xml,我們必須地發回JSON (澤西島將發回xml)。RESTful服務,通過擴展

此外,它似乎是主要人員(非常高級別的技術和知識淵博的人)說,我們不應該使用擴展名如.xml或.json進行搜索(非資源),也就是說,它是針對'原則「做類似」http://myrest/search.json?q = abc「的內容。相反,我們應該做一些事情,如「HTTP:// * /搜索輸出= json的& Q = ABC」(要實現這種規範只是使我們的生活困難的,因爲什麼操作框架(新澤西州)提供不好玩) 。

您的意見是?

+1

我喜歡使用的擴展。這是你不用'@ QueryParam'來處理所有REST方法的格式和額外的邏輯來處理方法本身的格式變化。此外,Les Hazlewood在SF JUG上對此進行了一次精彩的演講。他的幻燈片在這裏:http://www.slideshare.net/stormpath/rest-jsonapis?ref=http://www.stormpath.com/blog/designing-rest-json-apis。請看幻燈片45和46以獲得他的意見。 – condit 2012-08-16 16:41:57

回答

1

你爲什麼要使用一個特殊的URL呢?如果客戶端發送Accept:application/json,他應該得到json。因此,如何只用http://myrest/search?q=abc

+0

我同意。如果用戶試圖保存生成的文檔,則對資源進行擴展的唯一實用原因是瀏覽器提示。該論點適用於.pdf,.jpg等,但很少適用於.xml或.json。 – 2012-08-17 16:53:24