无法在 ruby 中获取 SQS 消息

Unable to get SQS message in ruby

我正在 ruby 学习 AWS,我的控制器中有以下代码

sqs = WebService.sqs_client
    recieved_message = sqs.receive_message({
                                                        queue_url: ENV["SQS_URL"], # required
                                                        attribute_names: ["Policy"], # accepts Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy
                                                        message_attribute_names: ["MessageAttributeName"],
                                                        max_number_of_messages: 1,
                                                        visibility_timeout: 1,
                                                        wait_time_seconds: 1,
                                                    })
    if recieved_message.size > 0
      puts recieved_message[0]
    end
    puts recieved_message.size

然而输出如下

Started GET "/employee" for 127.0.0.1 at 2016-08-28 12:43:48 -0500
Processing by PageController#employee as HTML
1
  Rendered page/employee.html.erb within layouts/application (2.1ms)
Completed 200 OK in 2020ms (Views: 400.4ms | ActiveRecord: 0.0ms)

我试过在末尾添加 .body 和其他各种东西都无济于事。

谢谢

我通过研究这个例子弄明白了 here

我需要输入以下代码

  puts recieved_message["messages"][0]["body"]