我正在使用boto3 AWS庫連接到他們的SQS服務。我試圖從隊列連接,讀取和寫入消息,但這似乎不起作用,並且文檔沒有幫助無法使用boto3寫信息給SQS
這裏是我的代碼,任何人都可以發現我做錯了什麼?
#Connect to a session
session = Session(aws_access_key_id=SQSAccessKey, aws_secret_access_key=SQSSecretKey,region_name=sqsRegion)
#Connect to a resource
sqs= session.resource('sqs')
queue = sqs.get_queue_by_name(QueueName=transactionQueue)
print(queue.url)
# Create a new message
print 'creating new message'
toWrite = 'hello world'
response = queue.send_message(MessageBody=toWrite)
print(response.get('MessageId'))
#Reading messages in queue
messages = queue.receive_messages()
print 'there are %s messages in the queue' % len(messages)
for message in messages:
# SQS Message
message.body
message.delete()
發送新的消息隊列(和打印出郵件ID)後,我嘗試閱讀郵件的隊列,但它返回,就好像什麼也沒有寫它沒有新的消息。
我做錯了什麼?
謝謝!
你有排隊延遲嗎?您有其他客戶端在同一時間輪詢隊列嗎? – nanestev
沒有延遲也沒有其他客戶端輪詢隊列: {'ApproximateNumberOfMessagesNotVisible':'0','RedrivePolicy':'{「deadLetterTargetArn」:「」,「maxReceiveCount」:5}','MessageRetentionPeriod':'1209600', 'ApproxNumberOfMessagesDelayed':'0','MaximumMessageSize':'262144','CreatedTimestamp':'1415060940','ApproximateNumberOfMessages':'0','ReceiveMessageWaitTimeSeconds':'20','DelaySeconds':'0', – Nico