无法 post 有效负载通过 yii 应用程序松弛
Cannot post payload to slack via yii app
我正在寻找 post 来自我的 yii 应用程序的一个简单的 Slack 传入 WebHook,但我似乎无法将任何东西传送到 Slack。我相信我已经在我的 php.ini 中启用了 curl,我一直在使用来自 yii 扩展的 curl 包装器 (https://github.com/hackerone/curl)
这是我的代码;
$url = Options::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 只给了我 "No payload received"。如果我在 url 上使用 urlenode(),我会得到一个 'Error 500 - Undefined Index:scheme'
谁能看出我错在哪里?
你需要改变
$post_data['json_data'] = $json_data;
到
$post_data['payload'] = $json_data;
正在等待 post 名为“payload”的变量
我正在寻找 post 来自我的 yii 应用程序的一个简单的 Slack 传入 WebHook,但我似乎无法将任何东西传送到 Slack。我相信我已经在我的 php.ini 中启用了 curl,我一直在使用来自 yii 扩展的 curl 包装器 (https://github.com/hackerone/curl)
这是我的代码;
$url = Options::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 只给了我 "No payload received"。如果我在 url 上使用 urlenode(),我会得到一个 'Error 500 - Undefined Index:scheme'
谁能看出我错在哪里?
你需要改变
$post_data['json_data'] = $json_data;
到
$post_data['payload'] = $json_data;
正在等待 post 名为“payload”的变量