【问题标题】:Receiving message from SQS: received message is different from sent message从 SQS 接收消息:收到的消息与发送的消息不同
【发布时间】:2015-05-08 08:39:58
【问题描述】:

我正在处理一个 SQS 队列,我在其中使用 Python boto 发送一个元素。 当我尝试从 Java 接收它时,我得到了其他东西,而不是同一个主体。

这是我的 Java:

CreateQueueRequest createQueueRequest = new CreateQueueRequest().withQueueName("random_queue");
String queueUrl = sqsClient.createQueue(createQueueRequest).getQueueUrl();
ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(queueUrl).withWaitTimeSeconds(20);
            List<Message> messages = sqsClient.receiveMessage(receiveMessageRequest).getMessages();
            System.out.println(messages.toString());
            for (Message message : messages) {
                String element = message.getBody();

                System.out.println(" [x] Received '" + element + "'");
}

输出:[x] Received 'ZGY1YzNiODYtNTM4Ny00NzVmLThkMGEtMDc4MzkxM2M2YWY5'

Python 代码:

my_queue = conn.create_queue('random_queue', 900)
m = my_queue.read()
body= m.get_body()

print body

输出:df5c3b86-5387-475f-8d0a-0783913c6af9(这是我在队列中发送的实际消息)

为什么我的 Java 向 Python 返回不同的消息?

【问题讨论】:

    标签: amazon-web-services amazon-sqs aws-java-sdk


    【解决方案1】:

    Java 代码返回 base 64。解码得到原始消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-02-23
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 2021-07-06
      • 2021-10-04
      • 1970-01-01
      相关资源
      最近更新 更多