JAVA微信公众号(三) 群发消息

微信公众号(一)获取access_token这里是引用
https://blog.youkuaiyun.com/FORLOVEHUAN/article/details/81512556
微信公众号(二)获取用户列表
https://blog.youkuaiyun.com/FORLOVEHUAN/article/details/82760618

org.apache.commons.httpclient下载地址
https://download.youkuaiyun.com/download/forlovehuan/10674362

预览接口【订阅号与服务号认证后均可用】
开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排版。
为了满足第三方平台开发者的需求,在保留对openID预览能力的同时,
增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制(100次)
,请勿滥用。



import java.util.HashMap;
import java.util.Map;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.ByteArrayRequestEntity;
import org.apache.commons.httpclient.methods.PostMethod;
import org.springframework.stereotype.Service;

import com.google.gson.Gson;

import net.sf.json.JSONObject;
@Service
public class WX_SendMsg{
	
	
	public static void main(String[] args) {
		messTextMessage("群发");
	}
	
	/**
	 * 群发文本消息
	 * @param openId
	 * @param text
	 * @return
	 */
	 public static boolean messTextMessage(String text) {
	        try {
	            String resp = "";//响应
	            String openId="oLD9puE-fxhKmn6wYA_au4uVSDHXN";
	    		String accessToken="";
	            String reqUrl = "https://api.weixin.qq.com/cgi-bin/message/mass/preview?access_token="+accessToken;
	            try {
	                // 构造httprequest设置
	                HttpClient client = new HttpClient();
	                PostMethod request = new PostMethod(reqUrl);
	                // 添加request headers
	                request.addRequestHeader("Content-type", "application/json");
	                request.addRequestHeader("Accept", "application/json");

	                Map<String, Object> param = new HashMap<String, Object>();
	                param.put("touser", openId);
	                param.put("msgtype", "text");
	                Map<String, Object> content =  new HashMap<String, Object>();
	                content.put("content", text);
	                param.put("text",content);

	                String json = new Gson().toJson(param);
	                request.setRequestEntity(new ByteArrayRequestEntity(json.getBytes("UTF-8")));  

	                client.executeMethod(request);  
	                resp = request.getResponseBodyAsString();
	                
	                JSONObject jsonObject = JSONObject.fromObject(resp);
	                WX_ReturnMsg wX_ReturnMsg=(WX_ReturnMsg)JSONObject.toBean(jsonObject, WX_ReturnMsg.class);
	                System.out.println("wX_ReturnMsg=="+wX_ReturnMsg.toString());
	            } catch (Exception e) {
	                System.out.println("发送POST请求出现异常!" + e);
	                e.printStackTrace();
	            } 

	        } catch (Exception e) {
	            e.printStackTrace();
	        }
	        return false;
	    }
}



public class WX_ReturnMsg {
	private String errcode;
	private String errmsg;
	private String msg_id;
	public String getErrcode() {
		return errcode;
	}
	public void setErrcode(String errcode) {
		this.errcode = errcode;
	}
	public String getErrmsg() {
		return errmsg;
	}
	public void setErrmsg(String errmsg) {
		this.errmsg = errmsg;
	}
	public String getMsg_id() {
		return msg_id;
	}
	public void setMsg_id(String msg_id) {
		this.msg_id = msg_id;
	}
	
	public String toString() {
		return "errcode:"+errcode+";errmsg="+errmsg+";msg_id:"+msg_id;
	}

}






您好!关于Java微信公众号开发,我可以为您提供一些基本的信息和指导。 首先,微信公众号开发要有两种类型:订阅号和服务号。订阅号主要用于信息传达和内容分享,而服务号则更加注重业务功能和用户交互。 在Java开发中,您可以使用微信公众平台提供的开发接口进行开发。以下是一些常用的开发步骤和技术: 1. 注册微信公众平台账号:前往微信公众平台(https://mp.weixin.qq.com/)注册一个账号,并完成开发者认证。 2. 配置服务器:在公众号设置中,配置服务器URL和Token。Token用于验证消息的真实性。 3. 接入消息接口:通过开发接口,将用户发送的消息和事件推送到您的服务器。您可以使用Java框架(如Spring Boot)搭建服务器,并使用接口进行消息的处理和回复。 4. 实现功能:根据您的需求,可以实现一些常见的功能,如自动回复、菜单管理、用户管理、消息模板等。您可以使用Java的相关库和工具来简化开发过程。 5. 公众号运营:在开发完成后,可以进行公众号的运营和推广。您可以通过素材管理、群发消息、数据统计等功能来提升用户体验和运营效果。 需要注意的是,微信公众号开发涉及到用户隐私和信息安全,建议您在开发过程中遵守相关规定,并进行必要的数据加密和安全防护。 希望以上信息对您有所帮助!如果您有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值