Jquery 我在带有PUT方法的ajax中的请求返回错误500
我试图使用Ajax的put方法来更新我的表,它存储在rest服务器上,但是我得到了500个错误(内部服务器错误),我不知道该怎么办,有人能帮我吗?我是ajax编程新手Jquery 我在带有PUT方法的ajax中的请求返回错误500,jquery,ajax,Jquery,Ajax,我试图使用Ajax的put方法来更新我的表,它存储在rest服务器上,但是我得到了500个错误(内部服务器错误),我不知道该怎么办,有人能帮我吗?我是ajax编程新手 $(document).on('click', "#modalgravar", function(){ var eURL = 'http://localhost:8081/datasnap/rest/TCadastros/Grupo/'; var Ecdgrupo = $("#Cdgrupoedit").val();
$(document).on('click', "#modalgravar", function(){
var eURL = 'http://localhost:8081/datasnap/rest/TCadastros/Grupo/';
var Ecdgrupo = $("#Cdgrupoedit").val();
var Egrupo = $("#grupoedit").val();
var eData ={"Cdgrupo": Ecdgrupo, "Grupos": Egrupo};
alert(JSON.stringify(eData));
$.ajax({
type:'PUT',
url: eURL,
data: JSON.stringify(eData),
success: function(){
alert("Editado!");
},
error: function(){
alert("ERRO: O grupo não foi editado!");
}
});
添加此
contentType:'application/json',
确保您的api端点将PUT请求与您在ajax请求中发送的RequestBody一起响应。如果您想在Datasnap中使用PUT方法,您需要更改服务器端的过程名称。名称应以“accept”开头,如“acceptURIMethodName”。所以在这种情况下可能是“acceptGrupo”。那么方法URL将是:
问题解决了!问题是服务器上缺少标题,因此我在使用cors时遇到问题。您正在从客户端发布代码,但状态500表示错误发生在服务器端。你也能从服务器上发布代码吗?@PPetkov很遗憾,我不能发布服务器代码,但我确信它与PUT兼容。从我对Ajax的一点了解来看,我相信服务器没有意识到我的调用是put,因为错误返回为:OPTIONS 500(内部服务器错误),我添加了application/json,但它也不起作用。同样的错误。在IE中工作,但在chrome中没有。在IE中工作?尝试禁用chrome扩展,比如AdBlock。我不使用任何AdBlock