<option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
<output id="tpnx7"></output>
<output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    首页 > 上网技巧 > 电脑小技巧 > java实现微信公众平台自定义菜单的创建示例

    java实现微信公众平台自定义菜单的创建示例

    时间:2019-03-11 16:40 作者:QQ地带 我要评论

     
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
     
    import org.json.JSONObject;
    public class MenuUtil {
     /**
      * 获得ACCESS_TOKEN
     * @Title: getAccess_token
     * @Description: 获得ACCESS_TOKEN
     * @param @return    设定文件
     * @return String    返回类型
     * @throws
      */
     private static String getAccess_token(){  
     
      String APPID="";
      String APPSECRET="";
     
           String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+ APPID + "&secret=" +APPSECRET;
           String accessToken = null;
          try {
                 URL urlGet = new URL(url);
                 HttpURLConnection http = (HttpURLConnection) urlGet.openConnection();    
     
                 http.setRequestMethod("GET");      //必须是get方式请求    
                 http.setRequestProperty("Content-Type","application/x-www-form-urlencoded");    
                 http.setDoOutput(true);        
                 http.setDoInput(true);
                 System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//连接超时30秒
                 System.setProperty("sun.net.client.defaultReadTimeout", "30000"); //读取超时30秒
                 http.connect();
     
                 InputStream is =http.getInputStream();
                 int size =is.available();
                 byte[] jsonBytes =new byte[size];
                 is.read(jsonBytes);
                 String message=new String(jsonBytes,"UTF-8");
     
                 JSONObject demoJson = new JSONObject(message);
                 accessToken = demoJson.getString("access_token");
     
                 System.out.println(message);
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
            return accessToken;
         }
     
     /**
      * 创建Menu
     * @Title: createMenu
     * @Description: 创建Menu
     * @param @return
     * @param @throws IOException    设定文件
     * @return int    返回类型
     * @throws
      */
        public static String createMenu() {
          String menu = "{\"button\":[{\"type\":\"click\",\"name\":\"MENU01\",\"key\":\"1\"},{\"type\":\"click\",\"name\":\"天气查询\",\"key\":\"西安\"},{\"name\":\"日常工作\",\"sub_button\":[{\"type\":\"click\",\"name\":\"待办工单\",\"key\":\"01_WAITING\"},{\"type\":\"click\",\"name\":\"已办工单\",\"key\":\"02_FINISH\"},{\"type\":\"click\",\"name\":\"我的工单\",\"key\":\"03_MYJOB\"},{\"type\":\"click\",\"name\":\"公告消息箱\",\"key\":\"04_MESSAGEBOX\"},{\"type\":\"click\",\"name\":\"签到\",\"key\":\"05_SIGN\"}]}]}";
     
            //此处改为自己想要的结构体,替换即可
            String access_token= getAccess_token();
            String action = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token="+access_token;
            try {
               URL url = new URL(action);
               HttpURLConnection http =   (HttpURLConnection) url.openConnection();    
     
               http.setRequestMethod("POST");        
               http.setRequestProperty("Content-Type","application/x-www-form-urlencoded");    
               http.setDoOutput(true);        
               http.setDoInput(true);
               System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//连接超时30秒
               System.setProperty("sun.net.client.defaultReadTimeout", "30000"); //读取超时30秒
               http.connect();
               OutputStream os= http.getOutputStream();    
               os.write(menu.getBytes("UTF-8"));//传入参数    
               os.flush();
               os.close();
     
               InputStream is =http.getInputStream();
               int size =is.available();
               byte[] jsonBytes =new byte[size];
               is.read(jsonBytes);
               String message=new String(jsonBytes,"UTF-8");
               return "返回信息"+message;
               } catch (MalformedURLException e) {
                   e.printStackTrace();
               } catch (IOException e) {
                   e.printStackTrace();
               }    
            return "createMenu 失败";
       }
     
        /**
         * 删除当前Menu
        * @Title: deleteMenu
        * @Description: 删除当前Menu
        * @param @return    设定文件
        * @return String    返回类型
        * @throws
         */
       public static String deleteMenu()
       {
           String access_token= getAccess_token();
           String action = "https://api.weixin.qq.com/cgi-bin/menu/delete? access_token="+access_token;
           try {
              URL url = new URL(action);
              HttpURLConnection http =   (HttpURLConnection) url.openConnection();    
     
              http.setRequestMethod("GET");        
              http.setRequestProperty("Content-Type","application/x-www-form-urlencoded");    
              http.setDoOutput(true);        
              http.setDoInput(true);
              System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//连接超时30秒
              System.setProperty("sun.net.client.defaultReadTimeout", "30000"); //读取超时30秒
              http.connect();
              OutputStream os= http.getOutputStream();    
              os.flush();
              os.close();
     
              InputStream is =http.getInputStream();
              int size =is.available();
              byte[] jsonBytes =new byte[size];
              is.read(jsonBytes);
              String message=new String(jsonBytes,"UTF-8");
              return "deleteMenu返回信息:"+message;
              } catch (MalformedURLException e) {
                  e.printStackTrace();
              } catch (IOException e) {
                  e.printStackTrace();
              }
           return "deleteMenu 失败";   
       }
     public static void main(String[] args) {
     
      System.out.println(createMenu());
     }
    }

    标签: 微信 java
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%

    Google提供的广告

    广东十分快乐开奖结果
    <option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
    <output id="tpnx7"></output>
    <output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    <option id="tpnx7"><p id="tpnx7"><pre id="tpnx7"></pre></p></option>
    <output id="tpnx7"></output>
    <output id="tpnx7"><ruby id="tpnx7"></ruby></output>
    <output id="tpnx7"></output><acronym id="tpnx7"><button id="tpnx7"><div id="tpnx7"></div></button></acronym><code id="tpnx7"><menuitem id="tpnx7"></menuitem></code>

    家庭手工致富 彩票计划群有赢的吗 海南国际自行车公路赛路线 网络捕鱼电玩 体育彩票销售申请 北京快3彩票控开奖结果 北京11选5中奖多少钱 11选5开奖结果5 二八杠app 澳门手机赌博软件 小猪不用 网络赚钱 微信彩票竞猜怎么更新 马龙乒乓球 高频彩的经验心得分享 11选5规律