amazon-web-services - AWS SQS FIFO Queue: How to set MessageGroupId on Send Message component of Mule 4
问题描述
UseCase: Sending message to AWS SQS FIFO queue name muleTesting.fifo using Mule Amazon SQS Connector 5.6
Implementing: https://docs.mulesoft.com/amazon-sqs-connector/5.6/amazon-sqs-connector-examples
Question: How do I add the MessageGrouperID parameter on SendMessageRequest using Mule SQS Connector, the following is giving error on SendMessage Mule Component:
{
body: "Hello World",
messageAttributes: {
"AccountId": {
"stringValue" : "000123456",
"dataType" : "String.AccountId"
} as Object {
class: "org.mule.extension.sqs.api.model.MessageAttributeValue"
},
"NumberId": {
"stringValue" : "230.000000000000000001",
"dataType" : "Number"
} as Object {
class : "org.mule.extension.sqs.api.model.MessageAttributeValue"
}
} as Object {
class: "java.util.HashMap"
}
} as Object {
class: "org.mule.extension.sqs.api.model.Message"
}
Error:
"The request must contain the parameter MessageGroupId. (Service: AmazonSQS; Status Code: 400; Error Code: MissingParameter; Request ID: 43ce279b-5972-5df0-bff5-706ac30f8b29; Proxy: null)"
解决方案
您应该能够像这样将 groupId 属性添加到您的有效负载中。
{
body: "Hello World",
groupId: "GroupName",
messageAttributes: {
"AccountId": {
"stringValue" : "000123456",
"dataType" : "String.AccountId"
} as Object {
class: "org.mule.extension.sqs.api.model.MessageAttributeValue"
},
"NumberId": {
"stringValue" : "230.000000000000000001",
"dataType" : "Number"
} as Object {
class : "org.mule.extension.sqs.api.model.MessageAttributeValue"
}
} as Object {
class: "java.util.HashMap"
}
} as Object {
class: "org.mule.extension.sqs.api.model.Message"
}
推荐阅读
- javascript - 为什么我的 html 值与数组中的任何内容都不匹配?
- tomcat - Tomcat URL 重定向问题
- python - 如何为pytest中的模拟函数提供不同的返回值?
- python - 将顶点总魔术标签问题转换为 SAT
- matlab - MATLAB - 拉伸直方图算法
- android - Kotlin + Retrofit + Gson 反序列化不适用于嵌套的 json
- javascript - 如何使用 Ajax 重绘 Google Chart
- html - Firefox 和 IE 上的像素大小比 Chrome 中的大
- python - 如何将仿射变换矩阵制作成透视变换矩阵?
- xamarin - 手势识别器进入细节