Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何仅向订阅了两个通道的安装发送解析推送通知?_Javascript_Parse Platform - Fatal编程技术网

Javascript 如何仅向订阅了两个通道的安装发送解析推送通知?

Javascript 如何仅向订阅了两个通道的安装发送解析推送通知?,javascript,parse-platform,Javascript,Parse Platform,我知道,根据,如果我想向“巨人”和“大都会”频道的所有安装发送推送通知,我会这样做: Parse.Push.send({ channels: [ "Giants", "Mets" ], data: { alert: "The Giants won against the Mets 2-3." } }, { success: function() { // Push was successful },

我知道,根据,如果我想向“巨人”和“大都会”频道的所有安装发送推送通知,我会这样做:

Parse.Push.send({
  channels: [ "Giants", "Mets" ],
  data: {
    alert: "The Giants won against the Mets 2-3."
  }
}, {
  success: function() {
    // Push was successful
  },
  error: function(error) {
    // Handle error
  }
});
但是,我想做的是只向两个通道中的安装发送推送通知,而不是只向其中一个通道发送推送通知


因此,在上面的例子中,我不会将其发送到“巨人”或“大都会”频道中的任何安装,我只会将其发送到同时在这两个频道中的安装,而不会发送到只有“巨人”或“大都会”频道的安装。有什么方法可以做到这一点吗?

发送基于频道的推送的替代方法是推送到查询。您可以构造一个与所需安装相匹配的Parse.Query,并以这种方式发送

因此,可以对通道键使用“containsAll”约束。试试看

var query = new Parse.Query(Parse.Installation);
query.containsAll("channels", ["Giants", "Mets"]);

Parse.Push.send({
  where: query,
  data: {
    alert: "The Mets Won!"
  }
}).then(function() {
  // success
}, function(error) {
  // error
});

在事件处理程序中检查其他通道订阅。根据定义,仅在一个频道上发送。。。