JAVA微信公衆番号(三)群発ニュース

3628 ワード

微信公衆番号(一)accessを取得するtokenここでは引用ですhttps://blog.csdn.net/FORLOVEHUAN/article/details/81512556微信公衆番号(二)ユーザーリストの取得https://blog.csdn.net/FORLOVEHUAN/article/details/82760618
org.apache.commons.httpclientダウンロードアドレスhttps://download.csdn.net/download/forlovehuan/10674362
プレビューインタフェース【サブスクリプション番号とサービス番号を認証して利用可能】開発者は、このインタフェースを介して指定したユーザにメッセージを送信し、携帯電話側でメッセージのスタイルとレイアウトを表示することができる.サードパーティプラットフォーム開発者のニーズを満たすためにopenIDのプレビュー能力を保持するとともに、指定したマイクロ信号に対してプレビューを送信する能力を増加させるが、この能力は1日あたりの呼び出し回数に制限がある(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 param = new HashMap();
	                param.put("touser", openId);
	                param.put("msgtype", "text");
	                Map content =  new HashMap();
	                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;
	}

}