难以使用jQuery AJAX制作pgsql错误消息警报

时间:2014-03-09 09:43:04

标签: javascript jquery ajax node.js

我有一个jQuery AJAX函数,可以发送一些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中的插入时,我有

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);

它根本不起作用 - 不会触发.fail AJAX选项(我认为)并且不会发出警告(绝对)。

我真的不太关心它 - 连接的第一个选项工作正常,只是想知道为什么它以这种方式表现

1 个答案:

答案 0 :(得分:1)

您正在寻找错误对象的message属性:

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