1. 程式人生 > >微信公眾號自定義選單建立

微信公眾號自定義選單建立

  開發公眾號的時候可能需要給一些自定義選單新增事件,比如點選某選單然後服務端給使用者推送資訊。

  我們也可以使用微信提供的網頁除錯工具直接生成選單,不過需要考慮是否影響使用者問題。

  注意:使用程式碼自定義選單事件,手動新增的選單會失效!謹慎使用!

官方文件

  httpClientUtil工具類需要的話可以在前面微信公眾號獲取access_token中獲取

public class WechatDIYMenuTest {
    public static void main(String[] args) {
        String accessToken = "15_A0pP-hwxjv3DCQbQmk9Gl99aIvjieSO6FStnoNyt78_S_Souv9RmMWRu9ndzlFJT4iD1e3iLXNGvxP2AB4aZ0k1" +
                "pK76Sp9DYMVLJZThKcsRCIJtFOw3qfGuM5d0GTDdAAAMZJ";

        JSONObject jsonObject = new JSONObject();
        JSONArray jsonArray = new JSONArray();

        //一級選單
        JSONObject menu1 = new JSONObject();
        menu1.put("type", "click");
        menu1.put("name", "選單1");
        menu1.put("key", "key_1");
        jsonArray.add(menu1);

        //一級選單
        JSONObject menu2 = new JSONObject();
        menu2.put("name", "選單2");
        JSONArray jsonArray2 = new JSONArray();

        //二級選單
        JSONObject menu3 = new JSONObject();
        menu3.put("type", "click");
        menu3.put("name", "選單3");
        menu3.put("key", "key_3");
        jsonArray2.add(menu3);

        menu2.put("sub_button", jsonArray2);
        jsonArray.add(menu2);

        //一級選單
        JSONObject menu4 = new JSONObject();
        menu4.put("type", "click");
        menu4.put("name", "選單4");
        menu4.put("key", "key_4");
        jsonArray.add(menu4);

        jsonObject.put("button", jsonArray);

        String url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + accessToken;
        String result = HttpClientUtil.doPostJson(url, jsonObject.toJSONString());
        System.out.println(result);
    }
}