我正在尝试使用 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
类型并传递empNo
和url
。由于delete方法只需要empNo,所以不需要data、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",
})
});
});
关于java - REST 从 jQuery : Method Not Allowed error 中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20171261/