ruby - 使用适用于 Ruby 的 AWS 开发工具包发布到 SNS 主题时指定区域

标签 ruby amazon-web-services amazon-sns

我正在使用适用于 Ruby 的 AWS 开发工具包向 Rails 3 应用程序发布消息和 AWS SNS 主题,如下所示:

sns = AWS::SNS.new
topic = sns.topics['arn:aws:sns:eu-west-1:55555555555:my_topic']
topic.publish("MESSAGE", :subject => "SUBJECT")

当我发布到“us-east-1”中的主题时,它按预期工作,但发布到“eu-west-1”区域中的主题时不起作用:

AWS::SNS::Errors::InvalidParameter - Invalid parameter: TopicArn:

使用 AWS SDK for Java 在创建客户端对象时设置区域。是否有类似的方法来使用适用于 Ruby 的 AWS 开发工具包设置区域?

最佳答案

是的,在您的 AWS 配置中,您可以通过配置初始化脚本传入该配置

:region => 'eu-west-1'

或者用你的 accesskey 等在一个文件中创建它,并在更新你的 api 客户端时传递整个文件

sns = AWS::SNS.new configFile

关于ruby - 使用适用于 Ruby 的 AWS 开发工具包发布到 SNS 主题时指定区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21195745/

相关文章:

ruby-on-rails - rails/Rspec : Having an anonymous controller be of a certain class

android - 从 AWS Lambda Node.js 向 Android 手机发送 AWS SNS 通知

amazon-web-services - 启动 EC 实例::调用 RunInstances 操作时发生客户端错误 (UnauthorizedOperation)

javascript - 如何在不发送私钥的情况下获取新消息SQS

node.js - 是否有部署架构以使用微服务模型发送 SMS 的最佳方法?

python - AWS Boto SNS 参数主题名称无效

ruby - 查找两个数组之间的共同值

ruby - 如何获取具有包含冒号的特定属性的节点?

ruby-on-rails - 如何从 Rails 模板(ERB 文件)中的错误中拯救出来

ios - 使用 AWS SNS 的计划通知