微信开发者模式下的功能之一获取素材列表并保存的方法了解一下:
写这个方法肯定也是根据微信开发文档说明总结出获取的方法,首先先看微信开发文档给出的内容获取方法接口提示:
首先文档主要部分接口参数说明:
这里建议需要调用的接口请求链接为了防止错误最好还是自己复制下来用,请注意请求方式“POST”和请求的协议。
接下来时文档给出的获取列表的返回形式:
返回形式中的参数说明:
好了,这就是微信开发文档中给出的所有获取素材列表的说明了,接下来我们要根据这些说明自己定义一个方法去实现这个过程,直接上代码:
首先在开发工具中顶一个通用工具类:CommonUtil.java,在这里面实现所需要的方法:
1 importorg.slf4j.Logger;2 importorg.slf4j.LoggerFactory;3
4
5 /**
6 * 通用工具类7 *@authorAdmin8 *9 */
10 public classCommonUtil {11 private static Logger log = LoggerFactory.getLogger(CommonUtil.class);//定义日志获取状态输出12
13 //凭证获取14 //获取access_token
15 public final static String token_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET";16 //获取素材列表
17 public final static String MATERIAL = "https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=ACCESS_TOKEN";18
19
20 }
这个工具类大体就是这个样式,该有的说明我都标注了,所需要调用的接口请直接复制即可,避免出错。
微信公众号开发都是需要调取接口的,在这个公共工具类中首先先写一个发送https请求的方法:
1 /**
2 * 发送https请求3 *4 *@paramrequestUrl 请求地址5 *@paramrequestMethod 请求方式(GET、POST)6 *@paramoutputStr 提交的数据7 *@returnJSONObject(通过JSONObject.get(key)的方式获取json对象的属性值)8 */
9 public staticJSONObject httpsRequest(String requestUrl, String requestMethod, String outputStr) {10 JSONObject jsonObject = null;11 try{12 //创建SSLContext对象,并使用我们指定的信任管理器初始化
13 TrustManager[] tm = { newMyX509TrustManager() };14 SSLContext sslContext = SSLContext.getInstance("SSL", "SunJSSE");15 sslContext.init(null, tm, newjava.security.SecureRandom());16 //从上述SSLContext对象中得到SSLSocketFactory对象
17 SSLSocketFactory ssf =sslContext.getSocketFactory();18
19 URL url = newURL(requestUrl);20 HttpsURLConnection conn =(HttpsURLConnection) url.openConnection();21 conn.se