如何访问Slack的交互式消息请求有效负载参数?

ypi*_*ard 7 python slack-api slack

当用户点击其中一条消息中的按钮时,我想访问Slack发送给Interactive Message Request Url的payload参数.

我该怎么做呢?

ypi*_*ard 7

在服务器端,检查您的请求网址路由是否允许接收POST。如他们的文档(https://api.slack.com/docs/message-buttons)中所述:

您的操作网址将收到一个HTTP POST请求,其中包括一个有效载荷主体参数,该参数本身包含一个application / x-www-form-urlencoded JSON字符串。

您首先必须对请求的x-www-form-urlencoded格式进行解码,然后对它进行json解码。

在python中,我最终得到以下代码行:

payload = json.loads(urlparse.parse_qs(request.get_data())['payload'][0])
Run Code Online (Sandbox Code Playgroud)

希望有一天能对别人有所帮助!

  • 并在Python3中使用`urllib.parse.parse_qs(request.get_data().decode())` (2认同)