我是一名新手 Rails 程序员,我对所有 AWS 产品的经验更少。我正在尝试使用 lambda 订阅和使用来自 youtube 的 rss 提要。我可以使用 HTTParty 从本地托管的 rails 应用程序发送订阅请求:
query = {'hub.mode':'subscribe', 'hub.verify':'sync', 'hub.topic': 'https://www.youtube.com/feeds/videos.xml?channel_id=CHANNELID', 'hub.callback':'API Endpoint for Lambda'}
subscribe = 'HTTParty.post(https://pubsubhubbub.appspot.com/subscribe, :query=>query)
它将使用 get 请求 ping lambda 函数。我知道我需要回显一个 hub.challenge 字符串,但我不知道如何。lambda 事件是空的,我在上下文中没有看到任何有用的东西。我尝试在 API 网关中格式化响应,但这也不起作用。所以现在当我尝试订阅时,我得到了一个“挑战不匹配”错误。
我知道这一点:https://pubsubhubbub.googlecode.come/git/pubsubhubbub-core-0.3.html#subscribing解释了我想要做的比我刚刚做的更好,第 6.2.1 节是故障所在. 如何设置 AWS Lambda 函数和/或 API Gateway 以反映“hub.challenge”验证令牌字符串?