Azure通知中心是否可以在一个请求中同时在SANDBOX和PRODUCTION中发送推送通知?

时间:2016-06-30 10:45:12

标签: azure push-notification apple-push-notifications azure-notificationhub

我使用Azure Notification Hub作为我的服务,向移动设备发送推送通知。

我开发了一个简单的节点服务器来注册和发送推送通知。

我已经完成了推送通知,移动客户端现在可以从我的服务器接收推送,但专门针对SANDBOX和PRODUCTION。

我的服务器是否可以在一个请求中同时在SANDBOX和PRODUCTION(一起)中发送推送通知?

这是我在SANDBOX / PRODUCTION

中发送推送通知的代码
var payLoad = {
        aps: {
            alert: data
        }
    };
    azure.apns.send(tag, payLoad, function (err, reps){
        if(!err){
            cb({error: false});
        }else{
            cb({error: true, error_log: err});
        }
    })

1 个答案:

答案 0 :(得分:2)

没有理由这样做。这是两个故意分离和隔离的环境。

这里的an older blog post概述了关于这两者的基本事实:

  

一般经验法则:

     

请记住,沙箱(开发)环境完全是   与生产环境分开。让我再说一遍:记住   沙盒(开发)环境完全独立于   生产环境。混合设备令牌和认证   环境将导致很多东西(即非   响应)。服务器需要来自配置的推送证书   门户。客户通过推送服务注册自己   与Apple服务器通信。这两个环境都有项目   他们需要特定的。更具体地说:

     

服务器需要单独的开发人员证书和生产   证书。注册时,客户端会获得不同的设备令牌   他们自己在开发构建与从下载的应用程序   应用商店。因此,存在以下规则(除非您执行某些操作   hackery我目前还没有意识到):

     

您的客户的开发版本(即,您的客户端上的任何构建版本)   来自开发环境的设备,包括Ad Hoc)将获得   注册APNS时的开发设备令牌。意思是   您无法在开发版本的基础上测试生产服务器设置   你的客户。试图这样做会导致混乱和浪费时间。   生产构建(即,实际从App下载的应用程序   Store)将获得生产设备令牌。这些必须进行测试   生产APNS服务器设置。