如何使用 MD5OfMessageAttributes 验证 AWS 是否已收到消息?
How to use MD5OfMessageAttributes to verify a message has been received by AWS?
来自 AWS 在线文档,
- 您可以使用此属性来验证 Amazon SQS 是否正确接收到消息。
我对这个说法有点困惑,
- 如果 AWS 服务器返回 MD5OfMessageAttributes 字符串,是否意味着我可以断定消息已成功发送到 AWS 服务器?
在客户端计算消息的md5,即在将您的消息放入队列之前。在属性中设置计算出的 md5 值。在将消息放入队列时,sdk 会计算 md5 并将其与给定值进行比较。如果两者匹配,则消息在网络数据传输中没有被篡改,因此将被认为是好的消息,消息放置操作成功。
如果有差异,put 操作将被拒绝。
如果客户端没有设置md5,sdk虽然对收到的消息还是会计算md5,但是不会比较拒绝消息。
最佳做法是在客户端设置 md5 并使用此功能来避免任何消息篡改问题。
来自 AWS 在线文档,
- 您可以使用此属性来验证 Amazon SQS 是否正确接收到消息。
我对这个说法有点困惑,
- 如果 AWS 服务器返回 MD5OfMessageAttributes 字符串,是否意味着我可以断定消息已成功发送到 AWS 服务器?
在客户端计算消息的md5,即在将您的消息放入队列之前。在属性中设置计算出的 md5 值。在将消息放入队列时,sdk 会计算 md5 并将其与给定值进行比较。如果两者匹配,则消息在网络数据传输中没有被篡改,因此将被认为是好的消息,消息放置操作成功。
如果有差异,put 操作将被拒绝。
如果客户端没有设置md5,sdk虽然对收到的消息还是会计算md5,但是不会比较拒绝消息。
最佳做法是在客户端设置 md5 并使用此功能来避免任何消息篡改问题。