我是亚马逊推送通知Android通知工作的新手,但问题出现在苹果推送通知。我为生产环境创建了新证书,导出了私钥,并将证书和私钥转换为pem格式。当我尝试使用java代码发送通知时,我收到500错误,当我尝试使用amazon控制台发送时,通知发布,设备收到它。以下错误是我尝试使用java程序发送通知时得到的。
===========================================
Getting Started with Amazon SNS
===========================================
Caught an AmazonServiceException, which means your request made it to Amazon SNS, but was rejected with an error response for some reason.
Error Message: Request could not be completed (Service: AmazonSNS; Status Code: 500; Error Code: InternalError; Request ID: 238e7020-5f23-5d76-89aa-3f6707fde345)
HTTP Status Code: 500
AWS Error Code: InternalError
Error Type: Service
Request ID: 238e7020-5f23-5d76-89aa-3f6707fde345
答案 0 :(得分:3)
1)检查属性文件中的安全密钥
2)检查证书 键和\ n在STring的开头和结尾有
http://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html#verify-cert-private-key-apns http://docs.aws.amazon.com/sns/latest/dg/using-awssdkjava.html
如果您可以共享日志,那么可能会给您实际的rootcause
答案 1 :(得分:1)
错误可能是因为您使用的证书和私钥。如果您能够使用亚马逊控制台发送通知,那么在创建平台应用程序时输入私钥.p12和密码时,请尝试获取在控制台中生成的私钥和证书,并打开pem文件替换内容pem文件中的证书和私钥与亚马逊证书和私钥的证书和私钥应该有效。