java – 从jQuery中删除REST:方法不允许错误

我试图使用jQuery Ajax删除记录并调用RESTful服务.但是当我执行时,我收到错误

The specified HTTP method is not allowed for the requested resource 
(Method Not Allowed).

这可能是什么原因?

REST服务代码

@Path("/employee")

@DELETE
@Path("/{empNo}")
@Produces(MediaType.APPLICATION_JSON)
public void remove(@PathParam("empNo") short empNo) {
getEmployeeService().delete(empNo);
}

jQuery ajax代码

$(document).ready(function () {
    var empNo = 9870;
    $("#btnSubmit").click(function () {
        $.ajax({
            url: "http://localhost:8181/Test1/rest/employee",
            type: "POST",
            data: JSON.stringify(empNo),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
        })
    });
});

解决方法:

使用DELETE类型并使用url传递empNo.由于删除方法只需要empNo,因此不需要数据,dataType.

$(document).ready(function () {
    var empNo = 9870;
    $("#btnSubmit").click(function () {
        $.ajax({
            url: "http://localhost:8181/Test1/rest/employee/" + empNo, // Pass empNo
            type: "DELETE", // Use DELETE
           // data: JSON.stringify(empNo), Commented these two.
           // dataType: "json",
        })
    });
});

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...