您好,我正在使用 Laravel 4 设置来利用 AWS SNS 向我的 iOS 设备发送推送消息,从 AWS 控制台向我的设备发布命令效果很好。
然后我尝试使用 PHP:
$sns = AWS::get('sns');
$sns->publish(array(
'Message' => 'Hello from PHP',
'TargetArn' => "arn:aws:sns:us-west-2:360542326270:endpoint/APNS_SANDBOX/Testtest/20a75cd1-da25-3331-8126-4db497cbdd5e"
));
我正在获取
Guzzle \ Service \ Exception \ ValidationException Validation errors: [TopicArn] is a required string: The topic you want to publish to.
但文档特别指出我可以使用发布发送到主题 ARN 或使用直接寻址直接发送到单个设备。
看来 AWS PHP SDK 强制我无论如何都要使用 TopicArn。
我做错了什么?
最佳答案
我刚刚从 Composer 中删除了显式的 guzzle 行。然后运行更新,它删除了guzzle 3.6并安装了3.9。然后删除 AWS-PHP-SDK 2.3.4 并安装 dev-master
然后我尝试了一下,它成功了。
不确定问题是什么,但不同的软件包版本不能一起工作...
关于php - AWS-PHP-SDK/SNS 直接寻址返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23255405/