客户端和服务器之间的sqs消息

时间:2013-04-09 22:52:06

标签: ruby amazon-web-services amazon-s3 amazon-sqs

我需要设置一个客户端,它将sqs发送到服务器:

客户方:

...
sqs = AWS :: SQS.new
q = sqs.queues.create(" q_name")
m = q.send_message(" meta")
...

但是服务器如何读取客户端的消息? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

首先,您需要让服务器连接到SQS,然后才能获得队列。 在队列中执行get_messages。转到boto docs以获取有关属性的更多信息。这将根据您的参数为您提供1到10个消息对象。然后在每个对象上执行get_body(),然后您将获得该消息的字符串。

这是python中的一个简单示例。对不起,不知道红宝石。

sqsConn = connect_to_region("us-west-1", # this is the region you created the queue in
                        aws_access_key_id=AWS_ACCESS_KEY_ID,
                        aws_secret_access_key=AWS_SECRET_ACCESS_KEY)

QUEUE = sqsConn.get_queue("my-queue") # the name of your queue

msgs = QUEUE.get_messages(num_messages=10, # try and get 10 messages
                          wait_time_seconds=1, # wait 1 second for these messages
                          visibility_timeout=10) # keep them visible for 10 seconds

body = msgs[0].get_body() # get the string from the first object

希望这有帮助。