2013-07-23 97 views
-1

我有一個包含幾個不同的DELETE方法的代碼,其中的一個有一個參數,或至少理想地,將採取的參數的參數。但是,當我通過CURL或通過Web客戶端發出此請求時,它不起作用。其他的DELETE請求功能正常,並且我已經在我想傳遞的參數中進行硬編碼,以查看該調用是否正常工作。我試過這兩個PathParam和QueryParam,都沒有工作。以下是我如何使用PathParams,我很確定這是正確的,QueryParams看起來非常相似,所以我不想發佈它。HTTP DELETE使用新澤西

@DELETE 
@Path("/byId/{id}") 
public void deleteById(@PathParam("id") String id) 

然後基本上是同樣的事情QuereyParams但很明顯的路徑是不同的

據我瞭解了很多RESTful API中的忽略任何請求體的使用DELETE請求,或者把它作爲一個PUT或POST。有沒有辦法解決?基本上我有一個數據庫,其中包含幾個對象,我需要刪除一個基於唯一標識符,由客戶端傳入。如果沒有辦法解決這個問題,我還有其他方法可以做到嗎?

它可能是我在想念着明顯的東西在這裏,我只是一直在使用新澤西州的幾個星期現在了這一點從來沒有聽說過的RESTful服務的概念。

+0

請將您的代碼添加到您的問題。 – 2013-07-24 11:51:33

+0

@Tichodroma實際上並沒有太多的代碼可以添加,除了可能我如何使用PathParams和QuereyParams(將代碼移動到問題) – user2482879

+0

這應該起作用。當你說「這行不通」時,你的意思是什麼? – 2013-07-24 13:32:18

回答

0

您可以將信息發送到一個RESTful服務爲任何標題,路徑PARAM,查詢參數或郵件正文。

如果所有的值經過如預期的存在與JAX-RS /球衣沒有問題。現在您需要調試代碼並修復您的實現。 jax-rs只會將DELETE調用與您實施的DELETE http方法相匹配。

它是那麼你的實際方法中執行資源的DELETE操作的責任。 jax-rs或jersey不會抱怨,如果你沒有刪除或者如果你在方法中做了其他的動作。