【发布时间】:2014-05-26 04:44:20
【问题描述】:
我有一个订阅 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 不转义双引号?
【问题讨论】:
标签: ruby json amazon-web-services amazon-sqs amazon-sns