1

yii アプリからシンプルな Slack 受信 WebHook を投稿しようとしていますが、Slack に何も配信されないようです。php.ini で curl を有効にしたと思います。yii 拡張機能 ( https://github.com/hackerone/curl )の 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 は、「ペイロードが受信されていません」というメッセージを表示します。URL で urlenode() を使用すると、「Error 500 - Undefined Index:scheme」が表示されます

誰かが私が間違っているところを見ることができますか?

4

1 に答える 1

1

変更する必要があります

    $post_data['json_data'] = $json_data;

    $post_data['payload'] = $json_data;

「ペイロード」という名前のポスト変数を待っています</p>

于 2015-11-13T00:42:01.477 に答える