Javascript 使用jQuery AJAX很难发出pgsql错误消息警报

Javascript 使用jQuery AJAX很难发出pgsql错误消息警报,javascript,jquery,ajax,node.js,Javascript,Jquery,Ajax,Node.js,我有一个jqueryajax函数,它发送一些JSON数据存储在我的postgresql数据库中,我使用Node、Express和Node-pg $.ajax({ type: 'POST', data: newUser, url: '/adduser', dataType: 'JSON' }) .done(function( response ) { // Do something }) .fail(function(errormsg) { // Alert the sq

我有一个jqueryajax函数,它发送一些JSON数据存储在我的postgresql数据库中,我使用Node、Express和Node-pg

$.ajax({
  type: 'POST',
  data: newUser,
  url: '/adduser',
  dataType: 'JSON'
})
.done(function( response ) {

  // Do something

})
.fail(function(errormsg) {

// Alert the sql error
alert(errormsg.responseText);

});
在处理客户端NodeJS中的insert时

db.query('INSERT INTO userlist (' + keys + ')  values ( ' + preppedString + ')', values, function(err, result) {

  if (err){
    var errorMessage = ("" + err);
    res.send(errorMessage);
  } else {
    res.send(result);
 }
});
现在,问题在于错误消息报告。如果我使用

    var errorMessage = ("" + err);
    res.send(errorMessage);
它工作得很好-您会收到一条警告,上面写着“错误:整数的输入语法无效:”ds“

但是,如果我删除字符串连接,然后

    var errorMessage = err;
    res.send(errorMessage);
它根本不起作用-不启动.failajax选项(我认为),也不发出警报(肯定)


我并不是真的太关心它-第一个连接选项工作得很好,只是想知道为什么它会以这种方式运行

您正在查找错误对象的
消息
属性:

var errorMessage = err.message;
res.send(errorMessage);

也许
err
不是字符串?尝试使用类型转换,类似于
errorMessage=err.toString()
的情况显然就是这样。输出的字符串是错误对象的第一个属性。有没有更好的方法可以做到这一点?关于
err.message
err.name
?在这里查看错误对象属性:winner-winner-err.message成功了。如果你想把它表述成一个答案,我会接受的。谢谢你的帮助