使用 python-slackclient 读取 Slack 事件的正文

Reading body of Slack event using python-slackclient

我正在尝试在 AWS Lambda 中创建无服务器 slack 机器人。我设法让应用程序使用交互式按钮向 Slack 中的用户发送消息,单击该按钮后,该按钮会将 post 发送回应用程序。问题是此消息的正文(来自按钮单击的消息)的正文 JSON 都是乱码。这是乱码的简化版本:

'body': 'cGF5bG9hZD0lN0IlMjJ0eXBlJTIyJTNBJTIyYmxvY2tfYWN0aW9...

JSON 对象的其余部分看起来很正常。

另一方面,我发送给 slack 的按钮对象是这个:

{
  "type": "button",
  "text": {
    "type": "plain_text",
    "emoji": True,
    "text": "Yes"
  },
   "style": "primary",
  "value": "click_me_123"
},

我错过了什么?感谢我能得到的所有帮助!

解决方案:这是响应的主体,它是用 Base64 编码的,所以我必须用以下方法解码它:

base64.b64decode('encoded_string').decode('utf-8')