没有收到Slack交互式有效负载

问题描述

我已经设置了带有操作按钮的通知,但是没有收到交互式有效负载。我在这里配置了webhook URL:

Slack app settings

当我在Postman中发布该URL时,一切都很好。但是,当我按下按钮时,没有回调到该URL,但没有得到任何响应(我将所有请求记录到该URL)。我的按钮旁边也会出现一个警告三角形,如下所示:

Warning

我没有其他反馈,也没有应该调试的想法。

带有按钮的消息通过Laravel的Slack通知频道以及此软件包的块支持发布:https://github.com/nathanheffley/laravel-slack-blocks

这是用于发送通知代码,但我认为这并不相关:

public function toSlack()
{
    $model = $this->model;

    $message = (new SlackMessage())
        ->error()
        ->content('New report!');

    $message->attachment(function ($attachment) use ($model) {
        $attachment->block(function ($block) {
            $block
                ->type('actions')
                ->elements([
                    [
                        'type' => 'button','text' => [
                            'type' => 'plain_text','text' => 'Approve','emoji' => false,],'value' => 'click_me_123','action_id' => 'approve_x','style' => 'primary',[
                        'type' => 'button','text' => 'Reject','value' => 'click_me_1234','action_id' => 'reject_x','style' => 'danger',]);
        });
    });

    return $message;
}

有什么想法应该继续进行调试吗?

解决方法

今天,我注意到,如果将鼠标悬停在三角形上,可以获得更多信息,但是我很确定昨天该方法不起作用。我收到消息“ 500服务器错误”。

问题是有效载荷JOSN作为表单数据字段发送,而不是像通常那样在POST请求正文中发送。他们为什么要这样发送有效载荷?没道理。