未收到推送通知-AWS SNS和Expo

菜鸟

我正在尝试使用AWS SNS发送我的推送通知。我现在正在测试。我已经在SNS中创建了平台和端点。当我从SNS控制台发送推送通知时,我没有收到任何通知。这就是我从那里发送的方式:

{"GCM": "{ \"notification\": {\"title\": \"Test\", \"body\": \"It works\" } }"}

现在,我尝试使用Javascript SDK以编程方式发送推送通知,但无法使其正常工作。我正在我的真实Android手机上测试该应用程序。哪个连接到本地托管的我的服务器应用程序。当应用程序打开时,我按下一个按钮,将一个http请求发送到我的本地服务器应用程序,然后该应用程序尝试发送推送通知。

奇怪的是,我收到了发送了推送通知的消息,但我从未在手机上收到它:

Push notification sent successfully!!!!  {
  ResponseMetadata: { RequestId: 'XXX-5913-996f-b8ec0c010eac' },
  MessageId: 'XXX-5308-98e3-0689b03df4b7'
}

这是我在本地服务器应用程序中拥有的代码:

module.exports.sendPushNotification = () => {
    var sns = new AWS.SNS({ apiVersion: '2010-03-31', region: 'us-east-1'});

    var params = {
        Message: `{
            "GCM": "{ \"notification\": {\"title\": \"Test\", \"body\": \"It works\" } }"
        }`,
        TargetArn: "######My Device ARN#######"
    };

    sns.publish(params, function(err, data) {
        if (err) {
            console.log("There was an error sending the push notification----> ", err)
        } // an error occurred
        else{
            console.log("Push notification sent successfully!!!! ", data);
        }                // successful response
    }); 
}

我试图更改消息的格式,但还是一无所获。我究竟做错了什么?

菜鸟

感谢一个叫“ Jitesh Prajapati”的人,他在脸书上给了我答案。它是这样工作的:

var sns = new AWS.SNS({ apiVersion: '2010-03-31', region: 'us-east-1'})
    
        let notification = JSON.stringify({
            'notification': {
                'title': "Notification Title",
                'body': "Your message goes here",
                'data': {}
            }
        });
    
    
        var params = {
            Message: JSON.stringify({
                GCM: notification
            }),
            MessageStructure: "json",
            TargetArn: "### Your target ARN ###"
        };
    
        sns.publish(params, function(err, data) {
            if (err) {
                console.log("There was an error sending the push notification----> ", err)
            } // an error occurred
            else{
                console.log("Push notification sent successfully!!!! ", data);
            }                // successful response
        });

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Expo iOS客户端上未收到推送通知

如何为使用AWS SNS创建的远程推送通知设置APNS通知标识符?

通过AWS SES发送后,“传递”和“退回” SNS通知

通过AWS SNS发送和接收推送通知

使用PHP发送器和Swift在后台未收到iOS GCM推送通知

AWS SQS未收到SNS消息

在iOS 10中未收到推送通知

未收到MixPanel推送通知

使用lambda和aws sns发送推送通知给单个设备

Laravel Expo推送通知-在Android上未收到通知

SNS SQS-未收到从SNS主题推送到队列的消息

使用SNS发送推送通知-Expo App

审核AWS CloudWatch和SNS通知

我该如何区分应用内收到的推送通知和应用外触摸的推送通知?

未收到GCM推送通知(全部结束)

设备未收到iOS推送通知

使用应用程序时未收到iOS推送通知

未收到Phonegap iOS推送通知

如果我使用从任何xcode 6版本生成的ipa进行了测试,则未收到AWS SNS通知,该如何解决?

桌面Google Chrome推送通知未收到

FBSDK 4.7.0和iOS 9邀请朋友未收到通知

AWS SNS收到多个通知

如何在Laravel 5.1中使用AWS SNS将推送通知从Web发送到iOS和android设备?

如何使用AWS SNS在Laravel中使用Android和iOS设备中的默认声音发送推送通知?

未收到离子云推送GCM通知

在Testflight中未收到推送通知

AWS SNS - 推送 GCM 显示为从 Cloudwatch 发送但未在移动设备中收到

有时未收到推送通知 firebase

iOS 使用cordova 推送通知。从未收到通知