微信开发之自定义菜单创建

最进在研究微信公众平台开发.遇到不少问题,现在记录一下.(PS:目前我使用的是wechat4j创建)

代码先出来

复制代码
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String token = TokenProxy.accessToken();
LOG.info("token===["+token+"]");
Menu menu = new Menu();
MenuButton mb = new MenuButton();
mb.setType(EventType.VIEW);
mb.setName("测试按钮");
mb.setUrl("www.baidu.com");//http://192.168.1.100:8080/wx
mb.setKey("aa");
List bu = new ArrayList<MenuButton>();
bu.add(mb);
menu.setButton(bu);
MenuManager mm = new MenuManager();
try {
mm.create(menu);
} catch (WeChatException e) {
// LOG.
e.printStackTrace();
}
}
复制代码

 


此时出现了两个问题,如下

1)异常码:65318;异常说明:must use utf-8 charset hint: [OTISGa0776vr19]

这个问题的出现是因为mb.setType(EventType.VIEW);这句代码

经过查找资料说需要使用小写的字符.后来改为mb.setType(EventType.view).便不抱错了


2)异常码:40055;异常说明:invalid button url domain hint

这个问题的出现是在

mb.setUrl("www.baidu.com"); 这里.找了一个以前的网址上的说明(官网上没有看到这个错误说明. http://blog.csdn.net/u014401637/article/details/61932637)

40055 invalid button url domain 不合法的菜单按钮url域名
后来我改成跳转到我自己项目上的地址便可以了 mb.setUrl("http://192.168.1.100:8080/wx");
此时.完整的代码如下:

复制代码
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String token = TokenProxy.accessToken();
LOG.info("token===["+token+"]");
Menu menu = new Menu();
MenuButton mb = new MenuButton();
mb.setType(EventType.view);
mb.setName("测试按钮");
mb.setUrl("http://192.168.1.100:8080/wx");
//mb.setKey("aa");
List bu = new ArrayList<MenuButton>();
bu.add(mb);
menu.setButton(bu);
MenuManager mm = new MenuManager();
try {
mm.create(menu);
} catch (WeChatException e) {
// LOG.
e.printStackTrace();
}
}
复制代码

以上内容来源于百科书,可以关注我了解更多.

posted @   玄之又玄众妙之门  阅读(61)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了

哦哦查

研学服务

知芽网

醉学网

点击右上角即可分享
微信分享提示