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通过更改后端来实现。如果你要求后端做一些事情,它回答说“是的,做了”,但没有做你要求它做的事情,那么它失败了。