我有相同的資源需要支持多種數據類型作爲輸入的要求嗎?什麼是最好的方式來做到這一點? 我是否應該明確提及輸入數據類型必須是2個不同的資源?或者有沒有一種方法來區分基於像Content-Type這樣的頭部的輸入對象?POST的REST輸入:相同的資源可以區分JSON和XML輸入嗎?
另一個問題是,即使有辦法在單個資源中執行此操作,如何定義我的對象?正如我想改變這兩種格式的對象。
我使用JAVA進行開發。
我有相同的資源需要支持多種數據類型作爲輸入的要求嗎?什麼是最好的方式來做到這一點? 我是否應該明確提及輸入數據類型必須是2個不同的資源?或者有沒有一種方法來區分基於像Content-Type這樣的頭部的輸入對象?POST的REST輸入:相同的資源可以區分JSON和XML輸入嗎?
另一個問題是,即使有辦法在單個資源中執行此操作,如何定義我的對象?正如我想改變這兩種格式的對象。
我使用JAVA進行開發。
或者有沒有一種方法來區分基於像Content-Type這樣的頭部的輸入對象?
這就是Content-Type請求標頭的用途。使用它。
正如Quentin所提到的,您可以使用Content-Type來區分輸入資源。在jax-rs實現中,您可以使用@Consumes
以及需要的@Produces
批註來匹配請求並適當地處理它們。
如果你有不同的對象綁定到不同的輸入格式,只需使用不同的映射器。
感謝您的回覆。我發現難以理解的是,即使API的路徑相同,REST是否足夠智能以基於內容類型在API之間切換? – baam
是的,你嘗試過嗎? – techuser
謝謝。我試過了,它工作。 – baam