我有一个队列在SQS通过Localstack本地运行。我已经配置了我的。env来与我的索引器和api进行通信。但是当我运行时,它给了我这样的消息:
Value I4nCE8HRz0M for parameter MessageDeduplicationId is
invalid. Reason: The request includes a parameter that is
not valid for this queue type.
我有点困惑什么可能是由于Localstack正常运行
出现问题是因为您试图将消息发送到FIFO队列,但您已经创建了一个标准队列。而不是运行command:
LOCAL_STACK_CONTAINER.execInContainer("awslocal", "sqs", "create-queue", "--queue-name", QUEUE_NAME);
你应该运行这个:
LOCAL_STACK_CONTAINER.execInContainer("awslocal", "sqs", "create-queue", "--queue-name", QUEUE_NAME, "--attributes", "{"FifoQueue":"true"}");
在我的情况下,我也得到了这个错误。这是因为发送到正常队列的消息具有deduplicationId头。正常的队列不喜欢头