Json 通过httpservlet请求传递其他参数
函数Json 通过httpservlet请求传递其他参数,json,servlets,jax-rs,Json,Servlets,Jax Rs,函数deleteGroup()删除一个组,此方法的参数之一是groupDN。在前端,我使用jquery指定HTTP删除请求。我之前发送的是groupDN,方法是在它后面添加URL。现在我想尝试发送嵌入HttpServletRequest的此参数。前端和后端的代码如下所示。有人能告诉我在请求中发送/接收附加参数的正确方法吗 前端 function removeGroup(groupDN) { var deleteGroupDetails=new Object(); deleteGroupDeta
deleteGroup()
删除一个组,此方法的参数之一是groupDN
。在前端,我使用jquery指定HTTP删除请求。我之前发送的是groupDN
,方法是在它后面添加URL。现在我想尝试发送嵌入HttpServletRequest
的此参数。前端和后端的代码如下所示。有人能告诉我在请求中发送/接收附加参数的正确方法吗
前端
function removeGroup(groupDN) {
var deleteGroupDetails=new Object();
deleteGroupDetails.groupDN=groupDN;
jQuery.ajax({
type : 'DELETE',
url : 'api/groupService/deleteGroup,
dataType : 'json',
data : JSON.stringify(deleteGroupDetails),
contentType : 'application/json',
async: false,
success : function(response) {
utilDisplayMessage(response,"SUCCESS");
window.location.reload();
},
error : function(obj, error, errormsg) {
utilDisplayMessage(obj.responseText,"ERROR");
}
});
}
deleteGroupDetails
包含groupDN
参数,我认为可以随请求一起传递该参数
Java中的后端
@DELETE
@Path("deleteGroup")
@Produces({MediaType.APPLICATION_JSON})
public String deleteGroup(@Context HttpServletRequest request) throws Exception {
String groupDN = request.getParameter("groupDN");
}
不要将请求正文与HTTP
DELETE
请求一起使用。您尝试做的不是REST,而是HTTP上的RPC(远程过程调用)。不要这样做
HTTPDELETE
动词告诉服务器删除URI标识的资源。所以如果你这样做了
DELETE /path/to/resources/123
应删除此URI标识的资源
如果您想通过一个delete
请求删除服务器上的多个实体,请精心设计资源URI以表示实体的集合。例如:
DELETE /path/to/resources/?groupDN=foo
可能意味着:删除所有以某种方式与筛选器匹配的实体groupDN=foo