文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

PHP调用微信消息订阅推送

2023-08-31 18:45

关注

分享一下消息订阅推送
相信小伙伴们在做项目的时候都会有消息订阅推送的功能,比方说做外卖项目或者是商城的时候,
用户下单,需要给用户微信推送一条订阅消息
废话不多说 直接上代码
1.首先需要在微信小程序上面申请订阅消息模板
在这里插入图片描述
然后按照详细内容在代码里进行配置并调用
在这里插入图片描述在这里插入图片描述
下面是我封装的代码:

public function sendMessage($appid,$appsecret,$touser,$template_id,$order_address,$order_type,$time,$order_status,$orer_remarks){        $page = '';//跳转页面不填则模板无跳转。        $url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' . $appid . '&secret=' . $appsecret;        $res = json_decode(file_get_contents($url), true);        $access_token = $res['access_token'];        //请求url        $urls = 'https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=' . $access_token;        //发送内容        $data = [];        //接收者(用户)的 openid        $data['touser'] = $touser;        //所需下发的订阅模板id        $data['template_id'] = $template_id;        //点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。        $data['page'] = $page;        //模板内容,格式形如 { "key1": { "value": any }, "key2": { "value": any } }        $data['data'] = [            "thing1" => [                'value' => $order_address            ],            "thing2" => [                'value' => $order_type            ],            "date3" => [                'value' => $time            ],            'thing4' => [                'value' => $order_status            ],            'thing9' => [                'value' => $orer_remarks            ],        ];        //跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版        $data['miniprogram_state'] = '';        return self::curlPost($urls,json_encode($data));    }//发送post请求    static function curlPost($url,$data)    {        $ch = curl_init();        $params[CURLOPT_URL] = $url;    //请求url地址        $params[CURLOPT_HEADER] = FALSE; //是否返回响应头信息        $params[CURLOPT_SSL_VERIFYPEER] = false;        $params[CURLOPT_SSL_VERIFYHOST] = false;        $params[CURLOPT_RETURNTRANSFER] = true; //是否将结果返回        $params[CURLOPT_POST] = true;        $params[CURLOPT_POSTFIELDS] = $data;        curl_setopt_array($ch, $params); //传入curl参数        $content = curl_exec($ch); //执行        curl_close($ch); //关闭连接        return $content;    }

调用然后调用接口就OK了。
这里有一个问题,消息订阅通知不能一直发送, 微信官方有个变态的规则,就是当你一直发送消息订阅通知,微信官方会认定这是垃圾消息推送,会给你拒绝接收消息。过一会就会好的。

来源地址:https://blog.csdn.net/weixin_47736740/article/details/128684278

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯