使用azure移动服务脚本时出现javascript错误

时间:2016-01-24 14:23:23

标签: javascript azure azure-mobile-services

我尝试使用azure移动服务脚本过滤某些结果,但我在日志中收到此错误。我也会显示传递给此函数的参数。

ERROR 脚本错误' /table/Restaurant.read.js'。错误:传递给'查询'的回调选项无效。回调选项必须是至少有一次成功的对象。或者'错误'属性类型'或者类型为' Array'的systemProperties属性。     [外部代码]     阅读时(:7:11)     时间:1:6     [外部代码]

这是我的代码

function read(query, user, request) {
  var location=request.parameters.Location;
  var category=request.parameters.Category;
  console.log("location is"+location);
   console.log("category is"+category);
   var sql="SELECT * from restaurant where Location=? AND Category=?";
   mssql.query(sql,[location],[category],{success:function(results){request.respond(statusCodes.Ok,results);}});

 } 

1 个答案:

答案 0 :(得分:1)

查询的参数需要作为单个数组传递,而不是每个参数传递一个数组。如果您从

更改查询
mssql.query(sql, [location], [category], {
    success: function(results) { request.respond(statusCodes.Ok, results); }
});

mssql.query(sql, [location, category], {
    success: function(results) { request.respond(statusCodes.OK, results); }
});

它应该工作。作为旁注,您应该使用statusCodes.OK代替statusCodes.Ok("确定"全部为大写字母)。