嗨,
由于亚马逊SNS端点的无证性质以及它们与用户的交互方式,我正在努力为Sinatra中的端点编码我的应用程序。我有一些PHP编写的代码 这里, ,但是我正在努力将其转换为红宝石阵列,因为 request.env["rack.input"].read 将所有内容封装成类似于PHP数组的事物:

{"Message"=>"chapstick", "Subject"=>"cherry", "Signature"=>"QutYUXuqWQqiAY4PUvd+Hq+9KWSvPVwck22oV0pXkgSg0p+kZ/2Q+pS24siDPKxxHB8+ru5q6  QBqQv+RHKWobiLiupEf4UP1MQu3lnP4Z2TYWvbHVjNiO5OutcaivPrn08EIBTOMsWl2i8JmaTBXozOp4r1vheqg6k/wWDoUmd0=", "TopicArn"=>"arn:aws:sns:us-east-1:687180262489:plinklebird", "SignatureVersion"=>"1", "Timestamp"=>"2010-12-03T22:10:01.141Z", "MessageId"=>"dc8a8502-44a8-41ec-9616-1d049f00724d", "UnsubscribeURL"=>"https://sns.us-east-1.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-1:687180262489:plinklebird:99e83fd5-58a9-41bb-82bd-9920a1ee1a94", "Type"=>"Notification"}

我不确定该如何处理,有人可以帮忙吗?

非常感谢您的宝贵时间,
卢克·卡彭特(Luke Carpenter)

有帮助吗?

解决方案

一年零四个月后,反思了这个问题:

那是因为我是一个完整而完全的菜鸟,我不知道当时的ruby是什么哈希

在你的 post 块,访问像这样的哈希内容:

post "/" do
  puts params['Message']
  halt 200
end 

SNS发送的消息将您将被打印到Stdout/您的终端

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top