本文主要讲述的是如何通过签名方式实现钉钉机器人报警的功能:
1、关于签名的生成:
/** * 签名实现 */ list($s1, $s2) = explode(' ', microtime()); $timestamp = (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000); $secret = '****'; $data = $timestamp . " " . $secret; $signStr = base64_encode(hash_hmac('sha256', $data, $secret,true)); $signStr = utf8_encode(urlencode($signStr)); $webhook = 'https://oapi.dingtalk.com/robot/send?access_token=****'; $webhook .= "×tamp=$timestamp&sign=$signStr";
2:使用guzzle请求接口,发送钉钉消息
/** * 发送钉钉报警 */ $guzzleClent = new GuzzleHttpClient(); $data = [ 'msgtype' => 'text', 'text' => [ 'content' => $msg, ] ]; $res = $guzzleClent->request('POST', $webhook,[ 'headers' => [ 'content-type' => 'application/json' ], 'body' => json_encode($data), ]); $res = json_decode($res->getBody()); var_dump($res);
(责任编辑:GM源码之家)
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如无法下载,联系站长索要。
如有侵犯您的版权,请及时【联系我们】我们尽快处理。