Javascript 发出deletejqueryajax请求时,响应代码为200,但数据不会被删除。可能的原因是什么
我正在尝试发出删除请求,但它不起作用。我的代码如下:Javascript 发出deletejqueryajax请求时,响应代码为200,但数据不会被删除。可能的原因是什么,javascript,jquery,ajax,rest,jax-rs,Javascript,Jquery,Ajax,Rest,Jax Rs,我正在尝试发出删除请求,但它不起作用。我的代码如下: $.ajax({ type : "DELETE", url : "/meds/dme-rest-api/resources/data-setup/deleteCheckList.json?" + $.param({"checkListId":currentCheckListId}), headers : {authToken : '${TOKEN}'}, cache : false, success
$.ajax({
type : "DELETE",
url : "/meds/dme-rest-api/resources/data-setup/deleteCheckList.json?" + $.param({"checkListId":currentCheckListId}),
headers : {authToken : '${TOKEN}'},
cache : false,
success : function(data){
console.log(data);
}
});
@DELETE
@Path("deleteCheckList.json")
@Produces(MediaType.APPLICATION_JSON)
public Response deleteCheckList(@HeaderParam(value = RestHttpHeaderNames.AUTH_TOKEN) String authToken,
@FormParam(value = "checkListId") int iCheckListId) throws Exception, SQLException {
User user = UserManagement.getInstance().get(authToken);
String sCompanyNo = user.getCompanyNo();
int iEmployeeNo = user.getEmployeeNo();
return RestUtils.getNoCacheResponseBuilder(Response.Status.OK).entity(
DataSetupManager.newInstance().deleteCheckList(sCompanyNo, iEmployeeNo, iCheckListId).toString())
.build();
}
我得到的响应是:{“errorMessage”:“success”:true}
但数据并没有被删除。这背后的原因是什么?
如果我需要一些额外的信息,请告诉我
更新API如下所示:
$.ajax({
type : "DELETE",
url : "/meds/dme-rest-api/resources/data-setup/deleteCheckList.json?" + $.param({"checkListId":currentCheckListId}),
headers : {authToken : '${TOKEN}'},
cache : false,
success : function(data){
console.log(data);
}
});
@DELETE
@Path("deleteCheckList.json")
@Produces(MediaType.APPLICATION_JSON)
public Response deleteCheckList(@HeaderParam(value = RestHttpHeaderNames.AUTH_TOKEN) String authToken,
@FormParam(value = "checkListId") int iCheckListId) throws Exception, SQLException {
User user = UserManagement.getInstance().get(authToken);
String sCompanyNo = user.getCompanyNo();
int iEmployeeNo = user.getEmployeeNo();
return RestUtils.getNoCacheResponseBuilder(Response.Status.OK).entity(
DataSetupManager.newInstance().deleteCheckList(sCompanyNo, iEmployeeNo, iCheckListId).toString())
.build();
}
您的java方法总是返回OK响应
您应该删除您需要删除的内容,这可能会失败。如果失败,则返回一个不正常的状态是
deleteConlist.json
一个文本json文件?如果是的话,那是行不通的。json文件没有解析输入和处理更新的逻辑。就像请求一个静态html文件一样,这就是您得到的全部内容。否则,如果这是一个实际的端点进行了一些处理,您将不得不调试该端点,以找出它为什么没有执行您期望它执行的操作。不,它不是json文件。这是API的路径。我将在一分钟后更新原始问题中的内容。@j08691为什么类型应为GET或POST?我的目标是删除信息。在更新之前,我没有看到您的rest标记。看起来你只是在调用一个普通的服务器脚本我该怎么做?java代码不是我写的。@user45437通过更改后端来实现。如果你要求后端做一些事情,它回答说“是的,做了”,但没有做你要求它做的事情,那么它失败了。