【问题标题】:Error 500 on server with ajax (send method)使用 ajax 的服务器上出现错误 500(发送方法)
【发布时间】:2024-05-29 13:15:01
【问题描述】:

我使用 Javascript 和 AJAX 来发送一些信息。下面的代码适用于我的本地机器,但不适用于我的服务器。

var str = "/Nouvelle_Fiche" + "/" + id_fiche + "/" + id_process + "/" + type_process + "/" + id_impact + "/" + id_auteur + "/" + id_situation + "/" + questionnaires;

xmlhttp.open("POST", str, true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send();

我在“xmlhttp.send();”行出现错误 500“内部服务器错误”。你能帮我吗 ?谢谢!

【问题讨论】:

  • console.log(str);并粘贴到这里
  • 您需要调试发送 ajax 请求的服务器端代码
  • str 值为:"/Nouvelle_Fiche/17/13766/I/43/1162/1/2_"
  • HTTP状态码500是服务端发送的,与JS无关。您必须查看您正在使用的任何网络服务器的错误日志。
  • 谢谢,但我无法调试服务器端,因为我无法访问图形界面。管理服务器的不是我。

标签: javascript ajax xmlhttprequest


【解决方案1】:

如果可以,请尝试以 json 格式发送 data 或在 ajax.send 函数中发送 null。 尝试更改内容类型。

var ajax = new XMLHttpRequest();
ajax.open("GET", url, true);
ajax.setRequestHeader("Content-type", "application/json");
ajax.send( data );

ajax.onreadystatechange = function() {
  if (ajax.readyState == 4 && ajax.status == 200) {
    console.log(ajax.response);
  }
};

【讨论】: