2017-01-22 31 views
0

我想通過iddept場在DELETE HTTP請求,並獲取內部deleteData()但我在deleteData()接收空的iddept在HTTP傳遞多個參數DELETE請求

$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不接受數據作爲參數。

無法工作

否則,我將傳遞一個對象,像這樣:

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); 
    }); 

如果你想成爲真正的RESTful ,你應該不需要任何傳遞給除id之外的HTTP Delete方法。

REST風格的

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); 
    });