Не удается опубликовать полезную нагрузку, чтобы ослабить через приложение yii

1

Я ищу, чтобы опубликовать простой загрузочный WebHook Slack из моего приложения yii, но я не могу получить ничего, что доставлено Slack. Я считаю, что я включил завиток в моем php.ini, я использую curl wrapper из расширений yii (https://github.com/hackerone/curl)

Здесь мой код;

$ url = Опции :: getSlackWebhookUrl();

        $json_data = json_encode(array(
            "text"=>"I'm a notification from yiiapp to Slack channel <" . Options::getSlackChannel() . ">", 
            "username"=> "yiiapptest",
            "channel"=> Options::getSlackChannel()
        ));
        $post_data['json_data'] = $json_data;

        $output = Yii::app()->curl->post($url, $post_data);

        // Just for debug: to see response
        echo "<pre>" . $url . " + " . $output . " (" . $json_data . ")</pre>";

Здесь мой вывод для просмотра;

https://hooks.slack.com/services/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 + No payload received ({"text":"I'm a notification from yiiapp to Slack channel <#digital>","username":"yiiapptest","channel":"#digital"})

Моя $ output просто дает мне "Без полезной нагрузки". Если я использую urlenode() на моем URL-адресе, я получаю "Ошибка 500 - Неопределенный индекс: схема",

Может ли кто-нибудь увидеть, где я ошибаюсь?

Теги:
curl
slack
yii
webhooks

1 ответ

1
Лучший ответ

вам нужно изменить

    $post_data['json_data'] = $json_data;

в

    $post_data['payload'] = $json_data;

его ожидающая переменная post с именем "полезная нагрузка"

  • 0
    Ах, спасибо, приятель - не знаю, как я этого не видел, спасибо большое, работает угощение.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню