【问题标题】:Why am I getting gibberish for http request body?为什么我的 http 请求正文会乱码?
【发布时间】:2020-01-23 16:14:50
【问题描述】:

我正在尝试创建一个使用 AWS lambda api 网关作为后端的 Slack 机器人。但是,我得到的事件负载有一个难以理解的负载主体。

在下面的例子中,我应该是这样的

我应该以某种方式解码身体吗?

我完全按照本指南进行操作,但我正在 python 中实现 lambda 函数。我只是不知道为什么我的活动甚至没有得到适当的身体。 https://youtu.be/XgFVzBNgidQ

【问题讨论】:

  • 加上 Alex 所说的,这看起来像是来自斜杠命令请求的编码请求。通常你不需要自己编码这些请求,但它应该由你的框架(例如烧瓶)自动完成。如果您将当前代码添加到问题中,我相信人们会很乐意帮助您找到解决方案。
  • 即使您删除带有令牌的文本,它仍然可以通过历史选项访问。您需要更改验证令牌。

标签: python-3.x http aws-lambda slack-api


【解决方案1】:

payload 不是乱码,它只是 base64 编码,可以使用支持 base64 解码的库或方法进行解码。这是解码后的值:

标记= xxxxxxxxxxxxxxxxx&TEAM_ID = TSQ1S1YKB&team_domain = dankscape&CHANNEL_ID = CSQ1S2D2M&CHANNEL_NAME = BOT和USER_ID = UT078Q6BA&USER_NAME = the.dankscape&命令=%2Fecho2&文本=喜+规格&response_url = HTTPS%3A%2F%2Fhooks.slack.com%2Fcommands%2FTSQ1S1YKB%2F921356743414%2Fv3ltAkqOhjOU8HyLiOiMmJkG&trigger_id = 908962933297.908060066657。 da505f8459f1102a090444d8934e188b

【讨论】:

  • 您好,我刚刚意识到我的验证令牌在问题中。你能把这个删掉吗?
  • @Qwertford 令牌已被编辑
猜你喜欢
  • 2010-12-27
  • 2022-01-01
  • 2016-11-10
  • 1970-01-01
  • 2014-03-28
  • 1970-01-01
  • 2020-11-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多