{-6ren">
gpt4 book ai didi

ruby - 使用 Ruby SDK 从 SNS 接收消息时的 AWS SQS JSON 格式

转载 作者:太空宇宙 更新时间:2023-11-03 17:33:54 25 4
gpt4 key购买 nike

我有一个订阅 SNS 主题的 SQS 队列。当我向主题发布新通知时,我使用以下代码(在 Sinatra 应用程序中):

jsonMessage =  {
"announcement" => {
"first_name" => results['first_name'][:s],
"last_name" => results['last_name'][:s],
"loc_code" => results['location'][:s],
"note" => params['note_content']
}
}

msgid = @announcments_topic.publish(jsonMessage.to_json,
{subject: "Note Created",
message_structure: 'json' })

当我的队列监听器收到此通知时,相应哈希的消息部分如下所示:

"Message"=>"{\"announcement\":{\"first_name\":\"Eve\",\"last_name\":\"Salt\",\"loc_code\":\"Location\",\"note\":\"test\"}}"

在我的队列监听器中,我想使用这个散列,但是当我尝试使用时

JSON.parse(result['Message'])

由于转义双引号,我收到意外的标记错误。关于如何解决这个问题的任何建议?我没有以 JSON 格式正确发送通知吗?如何让 sns/sqs 不转义双引号?

最佳答案

找到了答案。

问题是我获取 JSON 的方式。我需要使用 JSON.load(result['Message']),而不是 JSON.parse(...)

关于ruby - 使用 Ruby SDK 从 SNS 接收消息时的 AWS SQS JSON 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23862844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com