Parse.com JavaScript查询error handling不起作用

我正在玩parsing后端和NodeJS,但我现在有一个问题,我无法弄清楚。 我有这样的获取请求。

app.get("/movie", function (req, res) { var Review = Parse.Object.extend("Review"); var query = new Parse.Query(Review); var movie = req.query.movie; query.equalTo("movie", movie); query.first({ success: function (movie) { console.log("Success"); }, error: function (error) { console.log("Error: " + error.code + " " + error.message); } });}); 

这工作正常,但error handling有点不。 例如,如果我改变了

 query.equalTo("movie", movie); 

query.equalTo("movie", "xyz");

query.equalTo("abc", "xyz");

这在我的表中不存在,我仍然得到成功的声明。 是的,我每次都重新启动服务器。

更新

我尝试使用iOS SDK(Swift)相同的查询,在这里我进入了错误的情况。 我总是得到相同的错误,但不应该,但至less我得到一个错误,而在JS样本,我总是进入成功案例。

我相信query.first()不会错误,如果它没有find“第一个”对象。 你可以检查(电影==空)成功返回。

更新:

试试这样写:

 app.get("/movie", function (req, res) { var movie = req.query.movie; var query = new Parse.Query("Review"); query.equalTo("movie", movie); query.first().then(function (movie) { // Success console.log("Success"); }, function (error) { // Error console.log("Error: " + error.code + " " + error.message); }); }); 

即使你的表/集合中没有匹配数据, query.find()总是成功我们来试试吧

 query.find().then(function (movies) { if(movies.length > 0){ console.log("success"); }else{ console.log("query success but no data found"); } }, function (error) { // Error console.log("Error: " + error.code + " " + error.message); });