[本文所描述的内容具有一定的时效性,请以实际开发所处环境为准]
在前面的几篇文章中,我们已经叙述了,微信企业号中常见功能的实现原理,今天我们按照文章的顺序,给出相应的功能节点的示例代码。但是,对于程序的结构,还请各位看官按照自己的实际需求重新设计,另外,在github上,已经有现成的关于微信开发的开源项目,有兴趣的读者也可以学习一下。
-------------------------------------------------------------------------------------------------------------------------------------
示例环境:
系统:win7 x64
开发工具:myeclipse2014
开发语言:java JDK1.7
示例1.建立连接--主动。
【主动建立连接需要有别的动作来实现才能看到效果,因此示例1中,我们以发消息为里说明主动连接的实现效果】
准备工作:
a.参照前文申请一个企业号
b.先登陆微信公众平台手动添加一个用户
c.两个重要参数:corpid,serect
d.json工具包:json-lib-2.3-jdk15.jar,它的依赖包:commons-beanutils-1.7.0.jar,commons-collections-3.2.1.jar,commons-lang-2.5.jar,commons-logging-1.0.4.jar,ezmorph-1.0.6.jar
示例代码如下:
package test;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import net.sf.json.JSONObject;
/**
*@author 作者 E-mail:ingo
*@version 创建时间:2016年1月31日下午4:32:14
*类说明
*/
public class Main {
public static void main(String[] args) {
//企业号id
String corpid = "wxabc591........5";
//企业号密钥
String serect = "QqLOOyGEa.......BXM3B1n43a";
//token获取地址
String accesstokenurl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SERCRET";
accesstokenurl = accesstokenurl.replace("ID", corpid).replace("SERCRET", serect);
//获取token
JSONObject accesstoken = HttpRequest(accesstokenurl,"GET",null);
String token = accesstoken.getString("access_token");
//消息发送接口地址
String posturl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN";
posturl = posturl.replace("ACCESS_TOKEN", token);
//消息内容
String postdata = STextMsg("ingo", "", "", "12", "test");
//发送消息
JSONObject result = HttpRequest(posturl,"GET",postdata);
//结果输出
System.out.println(result);
}
/**
* text消息
* @param touser UserID列表(消息接收者,多个接收者用‘|’分隔)。特殊情况:指定为@all,则向关注该企业应用的全部成员发送————"touser": "UserID1|UserID2|UserID3"
* @param toparty PartyID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数————"toparty": " PartyID1 | PartyID2 "
* @param totag TagID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数————"totag": " TagID1 | TagID2 "
* @param msgtype 消息类型,此时固定为:text
* @param agentid 企业应用的id,整型。可在应用的设置页面查看
* @param content 消息内容
* @param safe 表示是否是保密消息&