精华内容
下载资源
问答
  • 5行代码实现微信模版消息推送,springboot实现微信推送,java微信推送 今天来带大家学习下微信模版消息推送。 先看效果图: 核心代码只有下面几行,即可轻松实现微信模版消息推送 //1,配置 ...

    5行代码实现微信模版消息推送,springboot实现微信推送,java微信推送

    今天来带大家学习下微信模版消息推送。

    先看效果图:

    image.png

    核心代码只有下面几行,即可轻松实现微信模版消息推送

        //1,配置
        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();
        wxStorage.setAppId("wx77bb69292323a000");
        wxStorage.setSecret("29bd368145806115ad6820133e62806e");
        WxMpService wxMpService = new WxMpServiceImpl();
        wxMpService.setWxMpConfigStorage(wxStorage);
        //2,推送消息
        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
                .toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的用户openid
                .templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id
                .url("https://30paotui.com/")//点击模版消息要访问的网址
                .build();
        try {
            wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
        } catch (Exception e) {
            System.out.println("推送失败:" + e.getMessage());
        }
    

    所用知识点
    1, springboot实现java后台
    2,微信测试账号的申请
    3,微信模版推送的配置
    接下来就带领大家来一步步实现微信模版消息推送。
    一,springboot创建java后台
    至于springboot怎么创建java后台,我这里就不再唠叨了,大家百度一下,一大堆的文章。这里只需要重点讲解下以下几点。

    1,在pom.xml文件里引入下面类库


    com.github.binarywang
    weixin-java-mp
    3.3.0

    2,写一个推送的controller
    package com.qiushi.wxpush;

    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;

    import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage;
    import me.chanjar.weixin.mp.api.WxMpService;
    import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;
    import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;

    /**

    • Created by qcl on 2019-03-28

    • 微信:2501902696

    • desc: 模版消息推送模拟
      */
      @RestController
      public class PushController {

      /*

      • 微信测试账号推送

      • */
        @GetMapping("/push")
        public void push() {
        //1,配置
        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();
        wxStorage.setAppId(“wx77bb69292323a000”);
        wxStorage.setSecret(“29bd368145806115ad6820133e62806e”);
        WxMpService wxMpService = new WxMpServiceImpl();
        wxMpService.setWxMpConfigStorage(wxStorage);

        //2,推送消息
        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
        .toUser(“o5kho6DgC7SDry8zCmXuvHJGvrgI”)//要推送的用户openid
        .templateId(“Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg”)//模版id
        .url(“https://30paotui.com/”)//点击模版消息要访问的网址
        .build();
        //3,如果是正式版发送模版消息,这里需要配置你的信息
        // templateMessage.addData(new WxMpTemplateData(“name”, “value”, “#FF00FF”));
        // templateMessage.addData(new WxMpTemplateData(name2, value2, color2));
        try {
        wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
        } catch (Exception e) {
        System.out.println(“推送失败:” + e.getMessage());
        e.printStackTrace();
        }

      }

    }
    二,接下来就来重点讲讲我们如何注册微信测试账号,并实现推送功能。
    正常我们企业开发,实现微信模版消息推送,必须要有微信公众号,备案的网址,并且最麻烦的一点是要获取到用户的openid,作为个人,这些条件基本上都不具备。所以今天就来带大家注册微信开发测试账号,来轻松实现微信模版消息推送。

    1,微信扫码登录下面网址
    https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
    扫码登录成功后,就会给我们生成微信公号的appid和appsecret
    image.png

    2,微信扫码关注 测试号二维码,微信给我们返回我们的openid,这个openid在推送时特别重要。因为你推送肯定要知道推送给 谁啊,就比如你打电话,肯定要知道用户的电话号码吧。这个openid就是我们要推送给那个用户的唯一标示。
    在这里插入图片描述
    3,拿到这些以后,我们就可以去实现微信推送了。推送的代码就只有下面这么点。

         //1,配置
        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();
        wxStorage.setAppId("wx77bb69292323a000");//appid
        wxStorage.setSecret("29bd368145806115ad6820133e62806e");//appsecret
        WxMpService wxMpService = new WxMpServiceImpl();
        wxMpService.setWxMpConfigStorage(wxStorage);
    
        //2,推送消息
        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
                .toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的用户openid
                .templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id
                .url("https://30paotui.com/")//点击模版消息要访问的网址
                .build();
        //3,如果是正式版发送模版消息,这里需要配置你的信息
        //        templateMessage.addData(new WxMpTemplateData("name", "value", "#FF00FF"));
        //                templateMessage.addData(new WxMpTemplateData(name2, value2, color2));
    
        //发起推送
        try {
            String msg = wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
            System.out.println("推送成功:" + msg);
        } catch (Exception e) {
            System.out.println("推送失败:" + e.getMessage());
            e.printStackTrace();
        }
    

    三,推送测试
    代码都完成后,我们就可以来测试推送了。测试我们这个分两种

    1,java的单元测试
    2,运行springboot,通过get请求来触发推送
    单元测试
    package com.qiushi.wxpush;

    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;

    import static org.junit.Assert.*;

    /**

    • Created by qcl on 2019-03-28

    • 微信:2501902696

    • desc:测试用例
      */
      @RunWith(SpringRunner.class)
      @SpringBootTest
      public class PushControllerTest {

      @Autowired
      PushController pushController;

      @Test
      public void push() {
      pushController.push();
      }
      }
      单元测试其实很简单,我们只需要点击箭头所指的绿色按钮,即可运行单元测试,运行通过后就可以看到发送消息成功了。
      image.png
      log里可以看出我们是10:46发起推送的,看下图我们微信接受到的推送消息也是10:46
      image.png

    运行springboot,通过get请求来触发推送
    这个就更简单了,我们启动springboot项目,然后调用get请求:
    image.png
    image.png
    可以看到我们也推送成功了。

    到这里我们就轻松通过简单几行代码实现了微信模版消息推送的功能了。

    我们在企业生产环境时,实现这个功能,步骤和这里是一样的。代码也和这里差不多,只不过多了一个获取用户openid的步骤,这个步骤微信要求比较严格,必须要有备案的网址作为回调,今天就不给大家深入讲解了,后期我会专门写一篇获取微信用户openid的文章出来。

    如果你有微信或者java开发方面的问题,可以加我微信交流学习:2501902696。也可以加我微信获取完整源码。

    最后一次编辑于 03-28 (未经腾讯允许,不得转载)

    展开全文
  • php编写 微信信息推送接口、钉钉推送接口、企业微信推送接口
  • 微信推送.zip

    2019-08-27 10:14:18
    用于后台微信推送,根据微信模板ID,传入相应的信息内容,推送给微信消息
  • 微信推送

    2018-07-19 10:57:24
    微信推送类! index.php WxTemple.class.php
  • C#企业微信推送.rar

    2020-09-21 18:04:27
    C# 实现的企业微信推送消息,企业微信给用户推送寸文字消息。图文消息等。 系统采用.net 4.0开发。vs2013版本。修改配置文件的企业id即可使用。非常方便。代码注释齐全。
  • 主要介绍了Python编程之微信推送模板消息功能,结合实例形式分析了Python微信推送消息接口的调用相关操作技巧,需要的朋友可以参考下
  • 微信推送 公众号:认证的公众号(个人的认证公众号每天只能发一篇文章),粉丝可以跟公众号聊天,未认证公众号 服务号:企业认证(营业执照),沙箱环境测试主动给用户发消息(推送),用户要接收到推送消息前提是需要...
  • 微信推送简单流程图

    2017-11-08 09:26:45
    根据微信官方文档,个人整理出来的微信推送的一个简单的流程图(仅是个人理解)
  • 企业微信推送 - news 推送方式

    千次阅读 2017-09-18 15:43:46
    企业微信推送 - news 推送方式

    由于需求需要用到news推送方式,尝试了一下并在这里做下总结。


    news方式区别于text方式无非多了url(推送点击后的跳转页面) 和 imgUrl(推送消息显示的图片的路径),imgUrl为空字符串时推送消息样式类似于text。


    需要注意的是url需要加上微信的地址(一开始直接写跳转页面的地址一直无法显示),路径如下:

    https://open.weixin.qq.com/connect/oauth2/authorize?appid="+corpid+"&redirect_uri="+ConfigContext.getValue("framework.academic.default.setup['projectUrl']")+"/page/news/announcementDetails.html?id=" + id + "&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

    其中corpid为企业微信的CorpId,  redirect_uri 后面接推送消息点击后需要跳转的页面url即可。


    同时imgUrl需要注意的是路径必须是“/”, 无法自动识别“\"为”/“。本小白在图片路径上卡了很久,因为数据库查出来的都是”\", 之前非消息推送的页面url可以识别”\",所以也没在意,在这里吃了亏。好在发现了问题所在,通过 replaceAll后成功显示图片(imgUrl = projectUrl + fullImgUrl.substring(urlIndex).replaceAll("\\\\", "/");)。


    代码如下:

    //调用推送,搜集推送内容
    Map<String,String> contentMap = new HashMap<String,String>();
            StringBuffer buffer = new StringBuffer();
            buffer.append(content.split("<p>")[1].split("</p>")[0]).append("\\n").append("\\n");
            buffer.append("发布时间:" + currentDateString);
            String description = buffer.toString(); //推送内容
            
            String url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+corpid+"&redirect_uri="+ConfigContext.getValue("framework.academic.default.setup['projectUrl']")+"/page/news/announcementDetails.html?id=" + id + "&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect"; //跳转链接
            
            contentMap.put("title", title); //推送标题
            contentMap.put("description", description); //推送内容
            contentMap.put("url", url); //跳转链接
            contentMap.put("picurl", imgUrl); //图片路径
            
            String dk = ConfigContext.getValue("framework.academic.default.setup['agentId']"); //获取AgentId
            SendMessWx.sendWeChatMsgText_util2("@all", "", "", contentMap, "no", dk);

    //dk为推送模块的AgentId

    //==================================================================================

    // news推送方式

    public static void sendWeChatMsgText_util2(String touser, String toparty, String totag,Map<String,String> content, String safe,String dk) {
            URL uRl;
            String Title = "";
            String Description = "";
            String URL = "";
            String PIC_URL = "";
            
            String ACCESS_TOKEN = "";
            ACCESS_TOKEN = getAccessToken_announcement();//获取 ACCESS_TOKEN
            
            Title = content.get("title");
            Description = content.get("description");
            URL = content.get("url");
            PIC_URL = content.get("picurl");
            
            // 拼接请求串
            String action = CREATE_SESSION_URL + ACCESS_TOKEN;
            // 封装发送消息请求json
            StringBuffer sb = new StringBuffer();
            sb.append("{");
            sb.append("\"touser\":" + "\"" + touser + "\",");
            sb.append("\"toparty\":" + "\"" + toparty + "\",");
            sb.append("\"totag\":" + "\"" + totag + "\",");
     
            sb.append("\"msgtype\":" + "\"news\",");
            sb.append("\"agentid\":" + "\"" + dk + "\",");
            sb.append("\"news\":" + "{");
            
            sb.append("\"articles\":" + "[");
            sb.append("{");
            sb.append("\"title\":" + "\"" + Title + "\",");
            sb.append("\"description\":" + "\"" + Description + "\",");
            sb.append("\"url\":" + "\"" + URL + "\",");
            sb.append("\"picurl\":" + "\"" + PIC_URL + "\"");
            sb.append("}");
            sb.append("]");
            
            sb.append("}");
            sb.append("}");
            String json = sb.toString();
            try {
                uRl = new URL(action);
                String result = WechatUtil.httpsRequest(action,"POST", JSONObject.fromObject(json).toString()); 
                System.out.println("微信返回:"+result);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    微信企业号开发文档:http://qydev.weixin.qq.com/wiki/index.php?title=%E6%B6%88%E6%81%AF%E7%B1%BB%E5%9E%8B%E5%8F%8A%E6%95%B0%E6%8D%AE%E6%A0%BC%E5%BC%8F


    展开全文
  • 自从用了老毛子固件中的微信推送,就再也放弃不了了,由于路由器的性能不够,改换LEDE软路由的门厅,但是LEDE软路由中又没有微信推送相关的功能,实在是太不方便了,于是在网上四处寻找软路由的推送脚本,可惜有关软...
  • 本系统是通过Delphi开发,通过微信推送和自主查询的方式查询工资条,可以对接人事系统。系统分两部分,一个是服务端(用来给员工查询工资单使用),一部分是控制端(用来设置参数,后天数据查看)。
  • Server酱,微信推送

    2019-09-26 17:59:00
    绑定:点击「微信推送」,扫码关注同时即可完成绑定;不喜欢微信的同学也可以下载手机客户端,扫描「客户端」页面的「绑定用二维码」绑定 发消息:就可以在手机上收到消息啦 整个过程,仅需一分钟。
  • 实现 SQL SERVER 数据库中的微信推送功能,可以将一些报警消息发送到微信讨论组或者微信订阅号、公众号、服务号,需要有认证的微信订阅号或者微信服务号
  • 获取微信推送sckey教程

    千次阅读 2019-08-31 21:12:13
    获取微信推送,详细步骤 1.使用github账号登录网站,没有github账号的先去注册一下,网址https://github.com 2. 进入网站,点击微信推送,打开微信推送功能 记录sckey值,按照步骤发送机器人就可以 ...

    获取微信推送,详细步骤

    • 1.使用github账号登录网站,没有github账号的先去注册一下,网址https://github.com

    登入网站
    2. 进入网站,点击微信推送,打开微信推送功能
    打开微信推送功能

    1. 记录sckey值,按照步骤发送机器人就可以
      获取sckey值
    展开全文
  • 微信推送功能实现

    2019-07-12 07:35:00
    微信推送 公众号:认证的公众号(个人的认证公众号每天只能发一篇文章),粉丝可以跟公众号聊天, 未认证公众号 服务号:企业认证(营业执照),沙箱环境测试 主动给用户发消息(推送),用户要接收到推送...

    推送的方式:

    • 短信推送(第三方)
    • 邮件推送
    • 微信推送
      • 公众号:认证的公众号(个人的认证公众号每天只能发一篇文章),粉丝可以跟公众号聊天,
        • 未认证公众号
      • 服务号:企业认证(营业执照),沙箱环境测试
        • 主动给用户发消息(推送),用户要接收到推送消息前提是需要关注对应的服务号才行
      • 企业号
      • 微信小程序

    微信推送的流程:

    微信沙箱环境:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

    使用pycharm打开微信推送demo,然后进行相关修改(下载地址)

    settings.py配置文件修改测试参数:

    然后将修改好的项目代码文件部署到服务器中,运行起来就可以测试了!

     流程分析:

    ① 用户登录到我的系统,扫码关注我的服务号(测试沙箱环境提供测试号二维码),关注以后用户还需要进行回调授权允许才算跟我的系统进行绑定

    ② 让用户跟我的系统绑定:

     登录认证装饰器

    生成的授权二维码扫码成功后,会自动跳转到回调路由链接

    点击继续访问,得到callback回调函数返回的结果并渲染到手机html页面上

    给用户推送消息功能

    使用场景,公众号发布文章、公众号提供购买服务,用户购买成功后、公众号需要主动与用户联系的时候就需要给关注公众号并已经授权的用户发送信息,即推送消息

    路由:

    模板形式推送消息

    简单给单用户推送信息功能的实现,这里需要再进一步思考一下,如何给多用户或者全部用户推送消息?

     

    转载于:https://www.cnblogs.com/suguangti/p/11170632.html

    展开全文
  • 微信推送例子

    2017-06-27 11:35:35
    C#版的微信推送例子,稍微改一下就可以直接用
  • 企业微信推送消息

    千次阅读 2021-01-21 11:36:14
    企业微信推送消息帮助文档:https://open.work.weixin.qq.com/help?person_id=1&doc_id=13374&helpType=undefined 2.2 配置企业微信群机器人 鼠标划向企业微信群,点击右键,添加群机器人 ...
  • pusher:一个可以向微信推送消息的软件
  • Python实现企业微信推送文件

    千次阅读 2020-01-06 15:16:25
    # -*-coding:utf-8 -*- __author__ = 'yangxin_ryan' import requests, json import urllib3 ...Python实现企业微信推送文件 备注:支持中文名字等 """ class WechatFile(object): def get_token(se...
  • 树莓派-server酱绑定微信推送消息(python)
  • VC++实现通过HTTPS以JSON数据格式微信推送消息,包含HTTPS协议和JSON协议,VS2008,VS2015
  • 马斯克更新微信推送(狗狗币)

    千次阅读 2021-05-16 10:33:43
    马斯克推特更新微信推送(狗狗币) 一分钟查看一次马斯克的推特,有新内容,微信推送给我。 定时任务执行,只打开一次浏览器,单进程执行,性能已经做优化,不会占用过高 CPU. gihub: ...
  • 健身俱乐部活动策划案及微信推送文案21天挑战者联盟.docx
  • 微信推送serverchan K3 路由器 luci-app-serverchan_1.0-40_all安装包
  • 微信推送通知服务(微信通知服务) 一,环境 Ubuntu 16.04 Python 2.7 二,部署 1.检查Python环境 确保Python2.7和pip9.0.1左右 python -V pip -V 2.上传项目并安装依赖软件库 sudo pip install -r requirements....
  • python使用微信推送消息

    千次阅读 2019-01-24 21:35:00
    python使用微信推送消息 from wxpy import * #该库主要是用来模拟与对接微信操作的 import requests from datetime import datetime import time import schedule from apscheduler....
  • 企业微信推送服务 由于服务器酱即将于2021年4月底停止服务,故自己使用Go语言重新实现实现服务器酱的推动服务以作代替。 使用方法 浏览器访问立即向向企业微信推送test 。网页返回错误码errcode ,具体参考 目前仅...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 84,672
精华内容 33,868
关键字:

微信推送