xmlhttp没有响应JS到Node

时间:2018-04-04 19:21:42

标签: javascript node.js xmlhttprequest

我收到了从html页面到Node服务的请求。

通过网址访问时,该服务在Firefox和Chrome中完美运行。当我使用curl和Postman时,它可以很好地工作。

当我使用XMLhttpsRequest时,它会启动与错误相关的函数,最终得到 readyState 4, status 0。

我不知道为什么,在特定时间Firefox通过开发人员的控制台让我知道我正在交叉访问(所以我正在访问localhost,但我不会因此而松开它)(顺便说一下:我再也没有收到“穿越”消息我肯定会用我的console.logs触摸一个合理的密钥,我应该删除它)

所以我将这个midleware合并到了我的服务器:

app.use(function(req, res, next) {
   res.header("Access-Control-Allow-Origin", "*");
   res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");

   next();
});

当我在Chrome中运行时,它说: 获取https://localhost:3000/oficina/9999 net :: ERR_CONNECTION_CLOSED 我发誓这不是真的。

我的Ajax代码是这样的:

function accede(accion,url,fn) {
    var xobj = new XMLHttpRequest();

//            console.log("accion: ", accion);
//            console.log("url   : ", url);

    xobj.overrideMimeType("application/json");
    xobj.open(accion, url, true);
    xobj.onerror = (e) => { 
        alert("Error del Navegador!!!\nStatus: " +xobj.status +" (" +xobj.statusText+")") 
        console.log("Falló, Header:")
        console.log(xobj.headers)
    }
    xobj.onprogress = (e) => {
        console.log("Progress: ")
    }
    xobj.onreadystatechange = () => {
        console.log("State:",xobj.readyState,"Status:", xobj.status)
        if (xobj.readyState == 4 && xobj.status == "200") {
            console.log("Fifó!")
        }
    };
    xobj.onload = () => { fn(JSON.parse(xobj.responseText)) };
    xobj.send();
}

整个代码在: https://github.com/elmasbestia/bnsvr

是的,有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

为什么不从邮递员处获取javascript代码 enter image description here

我尝试了2种方法。来自chrome和表单控制台。都工作 由于服务器上的异常,我得到了500分

enter image description here

另外,你为什么要使用https?我没有看到你的快递服务器是https