在COR响应期间收到服务器500错误

时间:2018-10-26 17:40:11

标签: javascript cors

我正在尝试从Chrome扩展程序发送JSON缓冲区,但出现内部500错误。这是发送缓冲区的代码。

var xhr = new XMLHttpRequest();
xhr.onerror = function(req,textStatus,errorThrown) {
    console.log(textStatus);
    alert('on-error')};

    xhr.open('POST', url, true);
    xhr.setRequestHeader("Content-type", 'application/json');
    xhr.setRequestHeader("X-Requested-With",'XMLHttpRequest');
    xhr.setRequestHeader("Access-Control-Allow-Origin", '*');
	
    xhr.onload = function () {   //response will go here
        if(xhr.status == 500) {
            alert("server error 500");
        }

在Apache Linux服务器端,我用

发回响应
enter code here
       $this->output
            ->set_content_type('application/json')
            ->set_header("Access-Control-Allow-Origin", "*")
            ->set_output(json_encode($table));

我已经在这个问题上停留了一个多月,真的需要一些关于我做错事情的想法。我在两台机器上都有调试器。我看到缓冲区正确耗尽,并且可以正确接收缓冲区。我认为我正确设置了响应标头,但始终收到500错误。顺便说一句,它在我的本地主机上运行的WAMP可以正常工作。

这来自apache error_log:[Fri Oct 26 18:22:07.162178 2018] [proxy_fcgi:error] [pid 2001:tid 139930806171392] [client 69.124.178.164:57141]脚本'index.php'的标头格式错误:错误的标题:{“ 0”:[“ {choose}”,“ IOS”,“ Mac”,“ [2018年10月26日星期五18:22:07.163669] [proxy_fcgi:error] [pid 2001:tid 139930806171392] [客户端69.124.178.164:57141] AH01070:解析脚本标头时出错 [2018年10月26日星期五18:22:07.163679] [proxy_fcgi:error] [pid 2001:tid 139930806171392](22)无效的参数:[client 69.124.178.164:57141] AH01075:错误地将请求分发给: [2018年10月26日星期五18:22:33.796554] [proxy_fcgi:error] [pid 2001:tid 139930797778688] [client 69.124.178.164:57179]脚本'index.php'的标头格式错误:标头错误:{“ 0”:[ “ {choose}”,“ IOS”,“ Mac”,“ [2018年10月26日星期五18:22:33.796627] [proxy_fcgi:error] [pid 2001:tid 139930797778688] [客户端69.124.178.164:57179] AH01070:解析脚本标头时出错 [2018年10月26日星期五18:22:33.796633] [proxy_fcgi:error] [pid 2001:tid 139930797778688](22)无效的参数:[client 69.124.178.164:57179] AH01075:将请求分发到时出错:

标头格式错误的行实际上是我从服务器到扩展程序的有效负载。不是标题,而是有效负载。

1 个答案:

答案 0 :(得分:1)

经过一个多月的思考,认为这是我的服务器或我的代码,结果证明这是codeigniter中未经证实的错误。我替换了

> show engine innodb status;

现在它可以正常工作了!