将mysql数据库数据 查询出来现在到页面 怎么将数据返回来呢,请教大虾们。
发布于 2年前 作者 evypu 1451 次浏览

新手学node. 用的是mySQL数据库 页面使用$.ajax请求 怎么将MySQL中查询的数据返回到$ajax来用呢。

4 回复

请求函数 QueryAllBeautyGoods: function(){ mysqlClient.connect(); var selectSQLString = "SELECT * FROM beauty_table"; var res=null; var callbackfn = function(erro,results){ if(erro){ console.log("数据库查询错误"+erro); mysqlClient.end(); return; } //成功查询 console.log(“数据库查询结果”); console.log(results); //结果能被正确打印出来 res = results; mysqlClient.end();

        }
        reqSelect(mysqlClient,selectSQLString,callbackfn);
        
    }

function reqSelect (client,selectSQLString,callback){ client.query(selectSQLString,function(erro,results){ callback(erro,results); });

查询出来的result能看到。但是请求没有返回,最后返回502报错: cannot requeue handshake after invoking quit

不知道是什么问题 请教各位大侠帮忙

返回的是 res.write(result)

result 要是字符串类型。JSON 对象用 JSON.stringify()处理一下。

请求函数的代码贴完整点,这样看不出来

数据库查询函数: function QueryAllBeautyGoods(){ mysqlClient.connect(); var selectSQLString = "SELECT * FROM beauty_table"; var res=null; var callbackfn = function(erro,results){ if(erro){ console.log("数据库查询错误"+erro); mysqlClient.end(); return; } //成功查询 console.log(“数据库查询结果”); console.log(results); //结果能被正确打印出来 res = results; mysqlClient.end();

    }
    reqSelect(mysqlClient,selectSQLString,callbackfn);

}

function reqSelect (client,selectSQLString,callback){ client.query(selectSQLString,function(erro,results){ callback(erro,results); });

前端js请求 $.ajax({ type:"POST", url: QueryAllBeautyGoods, //通过route执行到数据库查询函书 complete:function(res){ console.log(res); ///经过一段时间等待 前端这里输出错误Object {readyState: 4, setRequestHeader: function, getAllResponseHeaders: function, getResponseHeader: function, overrideMimeType: function…}

    }
    });
}

前端提示502 后端打印了查询的result 但请求一直没返回给前端 ,输出了cannot enqueue handshake after invoking quit.

麻烦各位帮忙看看 多多感谢了!

回到顶部