2017-01-22 15 views
0

をDELETE私は、DELETE HTTPリクエストにiddeptフィールドを渡し、deleteData()内で取得したいが、私はiddeptためdeleteData()にnullを受けています。パス複数のパラメータが要求

$http['delete']('webapi/Data/delete?' + cdata.id + "&&" + cdata.lineUp) 

@DELETE() 
@Path("/delete") 
public String deleteData(@QueryParam("id") String id, @QueryParam("dept") String dept){ 
+0

私はあなたが問題を回避するより多くの文脈が必要だと思います。 – Aaron

答えて

0

HTTP Deleteは、データを引数として受け入れません。あなたが本当にRESTfulなになりたいと思った場合、あなたが何かを渡す必要はありません

var cdata = { 
    id: 2, 
    lineUp: [...] 
}; 

// won't work 
$http.delete('webapi/Data/delete, cdata) 
    .then(function(response) { 
    console.log(response); 
    }) 
    .then(function(error) { 
    console.log(error); 
    }); 

は、そうでない場合

を動作しません、私はそうのようなオブジェクトを渡しますidの他にHTTP Deleteメソッドがあります。

var cdata = { 
    id: 2, 
    lineUp: [...] 
}; 

// RESTful 
$http.delete('webapi/Data/delete/' + cdata.id) 
    .then(function(response) { 
    console.log(response); 
    }) 
    .then(function(error) { 
    console.log(error); 
    }); 

安らか

ただし、回避策としてHTTP Postを使用することができます。

回避策

var cdata = { 
    id: 2, 
    lineUp: [...] 
}; 

// workaround 
$http.post('webapi/Data/delete, cdata) 
    .then(function(response) { 
    console.log(response); 
    }) 
    .then(function(error) { 
    console.log(error); 
    }); 
関連する問題