Javascript 使用jQuery AJAX很难发出pgsql错误消息警报
我有一个jqueryajax函数,它发送一些JSON数据存储在我的postgresql数据库中,我使用Node、Express和Node-pgJavascript 使用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
$.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成功了。如果你想把它表述成一个答案,我会接受的。谢谢你的帮助