微信服务号开发----发送消息
1、微信开发文档说明
http://mp.weixin.qq.com/wiki/11/c88c270ae8935291626538f9c64bd123.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
2、接口url
http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN
权限数量
3、主要代码
package com.kp.utils;import net.sf.json.JSONObject;import com.kp.enums.EnumMethod;/** * @author: py* @version:2016年12月18日 上午9:28:48 * com.kp.utils.SendMsgUtil.java* @Desc 主动发送消息给服务号用户,微信接口叫客服接口*/
public class SendMsgUtil {public static void sendMsg(String touser, String msg){String sUrl;try {sUrl = Constants.SEND_MSG_URL.replace("ACCESS_TOKEN", WechatAccessToken.getAccessToken(Constants.APPID, Constants.SECRET).getToken());String param = "{\"touser\":\"" + touser + "\",\"msgtype\":\"text\","+ "\"text\":"+ "{\"content\":\"" + msg + "\"}}";JSONObject jsonObject = HttpRequestUtil.httpRequest(sUrl, EnumMethod.POST.name(), param);boolean containsValue = jsonObject.containsKey("errcode");if(containsValue){String errcode = jsonObject.getString("errcode");System.err.println("SendMsgUtil|sendMsg|errcode:"+errcode);//errcode 为0表示成功//错误了就需要看返回码表了 http://mp.weixin.qq.com/wiki/10/6380dc743053a91c544ffd2b7c959166.html}} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) {String touser="o9eTvwxiDw-M9QZb595+5565956pw";//用户openid 也就是fromUserNameString msg="哈哈哈";//内容SendMsgUtil.sendMsg(touser, msg);}}
4、获取token代码
package com.kp.utils;import com.kp.enums.EnumMethod;
import com.kp.pojo.AccessToken;
import com.kp.pojo.WXjsTicket;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import net.sf.json.JSONException;
import net.sf.json.JSONObject;/*** 公众平台通用接口工具类* */
public class WechatAccessToken {/*** 获取access_token* * @param appid* 凭证* @param appsecret* 密钥* @return*/public static AccessToken getAccessToken(String appid, String appsecret) {AccessToken accessToken = null;String requestUrl = Constants.ACCESS_TOKEN_URL.replace("APPID", appid).replace("APPSECRET", appsecret);JSONObject jsonObject = HttpRequestUtil.httpRequest(requestUrl, EnumMethod.GET.name(), null);if(jsonObject==null){jsonObject = HttpRequestUtil.httpRequest(requestUrl, EnumMethod.GET.name(), null);}// 如果请求成功if (null != jsonObject) {try {accessToken = new AccessToken();accessToken.setToken(jsonObject.getString("access_token"));accessToken.setExpiresIn(jsonObject.getInt("expires_in"));} catch (JSONException e) {accessToken = null;// 获取token失败}}return accessToken;}private static Logger log = LoggerFactory.getLogger(WechatAccessToken.class);public static WXjsTicket getWXjsTicket(String accessToken) {WXjsTicket wXjsTicket = null;String requestUrl= Constants.JSAPI_URL.replace("ACCESS_TOKEN", accessToken);// 发起GET请求获取凭证JSONObject jsonObject = HttpRequestUtil.httpRequest(requestUrl, "GET", null);if (null != jsonObject) {try {wXjsTicket = new WXjsTicket();wXjsTicket.setJsTicket(jsonObject.getString("ticket"));wXjsTicket.setJsTicketExpiresIn(jsonObject.getInt("expires_in"));} catch (JSONException e) {wXjsTicket = null;// 获取wXjsTicket失败log.error("获取wXjsTicket失败 errcode:{} errmsg:{}", jsonObject.getInt("errcode"), jsonObject.getString("errmsg"));}}return wXjsTicket;}}
查看返回码说明http://mp.weixin.qq.com/wiki/10/6380dc743053a91c544ffd2b7c959166.html
5、源码地址:http://download.csdn.net/detail/u014520797/9714496
微信服务号开发----发送消息相关推荐
- 【微信服务号开发】01.接入指南
前言 当作为小白,来开发微信的时候,只依据官方文档来开发是很痛苦的,怎么配置,怎么编写代码文件,怎么让映射到外网访问,问题很多,比较痛苦. 下面内容来解决这些痛点,有不懂的问题,可以在下面留言评论哦. ...
- 微信服务号开发-获取用户位置信息
微信服务号开发-获取用户位置信息 在微信公众号开发的中,获取用户位置信息是非常常见的功能需求,通过用户的位置信息,可以做一些地图导航,以及基于LBS的营销活动. 下面将介绍微信服务号获取用户位置信息的 ...
- 微信服务号开发的完整人性化版攻略
前言: 本次要讲述的是一个本人完整微信服务号开发的经验分享,微信服务号的作品:请搜索微信号:zjaisino,名称:爱信诺Aisino一站式服务平台.(这里声明,这不是打广告,只是为了方便各位开花攻城 ...
- 微信公众号开发 - 发送Emoji表情
微信公众号开发文章目录 1.微信公众号开发 - 环境搭建 2.微信公众号开发 - 配置表设计以及接入公众号接口开发 3.微信公众号开发 - token获取(保证同一时间段内只请求一次) 4.微信公众号 ...
- Springmvc集成jfinal微信 微信服务号开发
最近研究微信服务号开发,发现jfinal家封装的SDK还是不错的,于是就定下来用它了. 那么问题来了:git上有demo,那么如何集成到自己的项目中呢?研究研究呗.我们框架使用的是springmvc, ...
- 微信服务号开发时获取授权遇到的问题
1.问题 (遇到的问题)微信服务号开发时获取授权遇到的问题 公众平台返回原始数据为: 错误代码-40164,错误信息-invalid ip, not in whitelist hint: [59FKq ...
- 微信公众号开发--图文消息发送不显示图片的问题
使用微信公众号接口实现图文消息推送,遇到问题,不显示图片,且content内容中有英文双引号也不行 1.微信不允许有外链的图片,所以会自动过滤 2."双引号格式问题. 前端把双引号传给后端后 ...
- 微信公众号开发(消息推送)
文章目录 微信公众号开发 运行效果 微信公众号简介 注册微信公众号 注册测试公众号 搭建微信本地调试环境 微信公众号接入(校验签名) 给指定用户推送消息 网页授权获取用户openid 给指定用户发送模 ...
- 微信公众号开发---基础消息能力开发
微信公众号接收普通消息 1.配置开发服务器 微信公众平台->开发->开发者工具->公众平台测试账号 appid:是微信公众号的唯一标识,通过和appsecret进行验证. URL:开 ...
最新文章
- 使用PHP搞定支付宝、微信扫码支付
- Cisco交换机中的flash,Rom,RAM,nvram的区别
- 十分钟看懂时序数据库(III)- 压缩
- 计算机软件通常称为,计算机软件通常分为
- android中使用startActivityForResult回传数据
- Qt下Undefined reference to 'vtable for xxx'
- php抓取动态数据,php+ajax实现无刷新动态加载数据技术
- Datawhale-零基础入门NLP-新闻文本分类Task04
- 菜鸟教程c语言题目,C 练习实例40
- ARP协议,ARP诈骗图
- Maven Web项目配置Mybatis出现SqlSessionFactory错误的解决方案
- win7下装ubuntu双系统
- 幅度为a0的载波由峰峰值_【砂石骨料】机制砂亚甲蓝值对混凝土性能的影响研究...
- 令人超赞的ButterKnife8.8.1—快捷、方面、好用!你还在等什么
- 操作系统概念 学习笔记
- MD5加密算法简单实现
- springboot 问卷调查系统
- Camera ISP-知识大纲
- 在ipad上的几款远程桌面工具使用体会
- Redis Cluster内存爆满
热门文章
- Nginx 414 Request-URI Too Large报错解决方法
- MATLAB程序设计与应用(第三版)刘卫国 答案(一)
- 如何度过8天长假?小灰推荐几部经典电影给大家!
- 大象机器人推出史上最紧凑的六自由度机械臂-mechArm
- android手机备份恢复出厂设置,手机恢复出厂设置,小编教你安卓手机怎么恢复出厂设置...
- 简单工厂模式--女娲造人造啥做啥
- 郑莉老师c++第五版 复习笔记
- 供应&需求链的结构化管理 (zt)
- 51单片机的延时函数快速生成技巧
- 7-10 接话茬 (25 分)