Java调用微信客服消息实现发货通知的方法详解

发布时间 - 2026-01-11 02:52:17    点击率:

本文实例讲述了Java调用微信客服消息实现发货通知的方法。分享给大家供大家参考,具体如下:

微信文档地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547&token=&lang=zh_CN

个人说明:这是一个样例,微信客户消息有很多种,我现在用的是公众号发送消息。样子如下图。

说明:下面开始代码部分了。

1.首先看微信文档。这里才是我们需要的

这里是说发消息要POST请求这个接口:https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN

但是这个接口后面需要带一个参数ACCESS_TOKEN。

下面先获取ACCESS_TOKEN。

//这里的WeixinUtil.getAccess_token()方法,放在下面。
String aToken = WeixinUtil.getAccess_token("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+你的appId+"&secret="+你的appSecret+"");
System.out.println("这里是aToken"+aToken);
String[] tokenOne = aToken.split(":");
String[] token = tokenOne[1].split(",");
char [] stringArr = token[0].toCharArray();
String token3 = "" ;
for(int i=1;i<stringArr.length-1;i++){
  String token2 = String.valueOf(stringArr[i]);
  token3 += token2;
}
System.out.println("这里是ACCESS_TOKEN"+token3);

获取到一个ACCESS_TOKEN,然后就可以加入到微信请求中

//这里就是一个微信请求,首先用String放着
String tokenurl = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token="+token3;
//首先确定是发送文字消息,还是图文消息,这里是手写的json数据.
//发送文字消息,无连接
String json = "{\"touser\":\"这里是Openid\",\"msgtype\":\"text\",\"text\":{\"content\":\"Hello World\"}}";
//图文消息,有链接连接
String jsonpic = "{\"touser\":\""+这里是Openid+"\","+ "\"msgtype\":\"news\",\"news\":{\"articles\":["+ "{\"title\":\"HelloWorld\",\"url\":\"要跳转的链接"}]}}";
System.out.println("这里是json"+jsonpic);
//请求方法,然后放回OK 成功,否则错误。这里这个请求方法在下边
String xmlStr = HttpKit.post(tokenurl,jsonpic);
System.out.println("这里是xmlStr"+xmlStr);

说明:WeixinUtil.getAccess_token()方法。我放整个类了。改包名,只需要导入两个包

package com.uitrs.weixin;
import java.net.HttpURLConnection;
import java.net.URL;
public class WeixinUtil {
  //传入URL
    public static String getAccess_token(String url) {
      String accessToken = null;
      try {
        URL urlGet = new URL(url);
        HttpURLConnection http = (HttpURLConnection) urlGet
            .openConnection();
        http.setRequestMethod("GET"); // 必须是get方式请求
        http.setRequestProperty("Content-Type",
            "application/x-www-form-urlencoded");
        http.setDoOutput(true);
        http.setDoInput(true);
        System.setProperty("sun.net.client.defaultConnectTimeout", "30000");// 连接超时30秒
        System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // 读取超时30秒
        http.connect();
        InputStream is = http.getInputStream();
        int size = is.available();
        byte[] jsonBytes = new byte[size];
        is.read(jsonBytes);
        accessToken = new String(jsonBytes, "UTF-8");
        System.out.println(accessToken);
        is.close();
      } catch (Exception e) {
        e.printStackTrace();
      }
      return accessToken;
    }
}

说明:HttpKit.post();方法,我放整个类了。这个类我用的是导入

import com.jfinal.kit.HttpKit;

这个包到了jfinal的包。出自下面三个包当中,具体我也不清楚了

1.jfinal-2.2.jar (应该是这个)
2.jfinal-2.2-bin-with-src.jar
3.jfinal-weixin-1.7-bin-with-src.jar

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java字符与字符串操作技巧总结》、《Java数组操作技巧总结》、《Java数学运算技巧总结》、《Java编码操作技巧总结》和《Java数据结构与算法教程》

希望本文所述对大家java程序设计有所帮助。


# Java  # 微信  # 客服消息  # 发货通知  # 微信java开发之实现微信主动推送消息  # java微信开发第二步 获取消息和回复消息  # Java开发微信公众号接收和被动回复普通消息  # java微信企业号开发之发送消息(文本、图片、语音)  # JAVA实现 springMVC方式的微信接入、实现消息自动回复实例  # 微信支付java版本之JSAPI支付+发送模板消息  # java微信开发API第二步 获取和回复消息  # Java微信公众平台开发(5) 文本及图文消息回复的实现  # Java微信公众平台开发(2) 微信服务器post消息体的接收  # Java微信公众平台开发(3) 接收消息的分类及实体的创建  # Java微信公众平台开发(4) 回复消息的分类及实体的创建  # 的是  # 操作技巧  # 文档  # 也不  # 放在  # 相关内容  # 才是  # 客服  # 我现在  # 感兴趣  # 这是一个  # 数据结构  # 我用  # 给大家  # 是说  # 只需要  # 跳转  # 放着  # 更多关于  # 所述 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何利用DOS批处理实现定时关机操作详解  制作电商网页,电商供应链怎么做?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  非常酷的网站设计制作软件,酷培ai教育官方网站?  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  详解jQuery停止动画——stop()方法的使用  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  node.js报错:Cannot find module &#39;ejs&#39;的解决办法  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  如何基于云服务器快速搭建个人网站?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  如何快速登录WAP自助建站平台?  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  Laravel怎么使用artisan命令缓存配置和视图  PHP正则匹配日期和时间(时间戳转换)的实例代码  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  香港服务器选型指南:免备案配置与高效建站方案解析  Python自动化办公教程_ExcelWordPDF批量处理案例  郑州企业网站制作公司,郑州招聘网站有哪些?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  如何用PHP工具快速搭建高效网站?  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  Laravel如何使用Collections进行数据处理?(实用方法示例)  如何正确选择百度移动适配建站域名?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  教学论文网站制作软件有哪些,写论文用什么软件 ?  详解CentOS6.5 安装 MySQL5.1.71的方法  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  Laravel如何与Inertia.js和Vue/React构建现代单页应用  如何快速搭建高效WAP手机网站吸引移动用户?  LinuxShell函数封装方法_脚本复用设计思路【教程】  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  Android GridView 滑动条设置一直显示状态(推荐)  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  Swift中swift中的switch 语句  JS弹性运动实现方法分析  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何挑选优质建站一级代理提升网站排名?  Laravel集合Collection怎么用_Laravel集合常用函数详解  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】