java实现微公众平台自定义菜单
StringBuffer bufferRes = new StringBuffer(); try { //这个URL是微信规定的格式,没什么好说的,其中的accessToken就是上面所讲到的获取到的ACCESS_TOKEN URL realUrl = new URL("https://api.weixin.qq.com/cgi-bin/menu/create?access_token="+ accessToken); HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection(); // 连接超时 conn.setConnectTimeout(25000); // 读取超时 --服务器响应比较慢,增大时间 conn.setReadTimeout(25000); Htt设置pURLConnection.setFollowRedirects(true); // 设置请求方式,这里一定要是POST,原因去官网看去 conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.setDoInput(true); conn.connect(); // 获取URLConnection对象对应的输出流 OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream()); // 发送请求参数 out.write(); out.flush(); out.close(); InputStream in = conn.getInputStream(); BufferedReader read = new BufferedReader(new InputStreamReader(in,"UTF-8")); String returnString= null; while ((returnString=read.readLine())!=null){ bufferRes.append(returnString); } System.out.println(bufferRes.toString()); in.close(); if (conn != null) { // 关闭连接 conn.disconnect(); } } catch (Exception e) { e.printStackTrace(); }
?
???需要注意的是,其中的params就是自定义菜单的具体格式,并且这次的请求方式是POST,而不是GET,这次返回码只是告诉你菜单是否设置成功,不会告诉你错在哪里,如果你的返回码说你错了,那多数是因为你给的自定义菜单的格式有错误,关于自定义菜单的格式,我不得不承认确实看起来很复杂,还是自己多研究研究比较好,我这有一份模板,对照着看看,官网上有模板,自己多研究研究,这个真没什么好说的,
OK,祝各位好运,我的Q:987706386