使用 Azure 移动服务脚本时的 JavaScript 错误

javascript error when using azure mobile service scripts

本文关键字:JavaScript 错误 脚本 Azure 移动 服务 使用      更新时间:2023-09-26

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

错误脚本"/table/Restaurant.read.js"中的错误。错误:传递给"查询"的回调选项无效。回调选项必须是具有至少一个类型为"函数"的"成功"或"错误"属性或类型为"Array"的系统属性属性的对象。 [外部代码] 阅读时 (: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);}});
 } 

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

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("OK"全部大写)。