解析,使用 Where 子句运行推送作业不起作用

Parse, run Push Job with Where clause doesn't work

我使用 Parse.com 并且我正在尝试运行一个作业脚本,它应该只推送特定的安装。

我在 JSON 数据中使用 Where 子句...但是没有任何变化,所有设备都被推送...

在我的 Cloud 代码下方,带有明确的 where 子句:

    var query = new Parse.Query(Parse.Installation);
    query.equalTo('objectId', "nonono");

    Parse.Push.send({
      channels: [ "MyDistrict" ],
      data: {
        "where": query, 
        "alert": "Votre quartier à besoin de vous !",
        "action": "1",
        "title": "Cherche héros"
      }
    }, { 
        success: function() { 
            status.success("Great, "+pushList.length+" users was just push ! DEBUG : "+JSON.stringify(query));
    }, error: function(err) { 
        status.error("Uh oh, something went wrong.");
      }
    });

这是正确的方法吗?

我的安装 Table 中只有一行的字段 "objectId" 等于 "lLWDVlQUYW"...

您只需移出 "data" 数组的 "where"。喜欢 "channels".

警告!

您不能同时使用 "channels" 和 "where"!所以你只需要在你的 "where" 查询中包含频道,就像这样:

var query = new Parse.Query(Parse.Installation);
query.equalTo('objectId', "nonono");
query.equalTo('channels',"MyDistrict");


Parse.Push.send({
  where: query,
  data: {
    "alert": "Votre quartier à besoin de vous !",
    "action": "1",
    "title": "Cherche héros"
  }
}, { 
    success: function() { 
        status.success("Great, "+pushList.length+" users was just push !");
}, error: function(err) { 
    status.error("Uh oh, something went wrong. > "+JSON.stringify(err));
  }
});

这对我有用:)