自定义菜单post后总是返回40008不合法的消息类型
取得的access_token:79edc9fe3bd74c159b2a2308e63d813b
Post参数:{"button":[{"name":"天气查询","type":"click","key":"queryweather"},{"name":"空气质量查询","type":"click","key":"queryairquality"},{"name":"优质内容","sub_button":[{"name":"每日英语","type":"click","key":"dailyen"},{"name":"知乎每日精选","type":"click","key":"dailyzhihu"},{"name":"每日笑话","type":"click","key":"dailyjoke"}]}]}
Post返回:{"errcode":40008,"errmsg":"不合法的消息类型"}
是java的
publicstaticStringPostURL(Stringurl,StringpostData,Stringcharset){
Stringdata=null;
try{
URLdataUrl=newURL(url);
HttpsURLConnectioncon=(HttpsURLConnection)dataUrl.openConnection();
con.setRequestProperty("Charset","UTF-8");
con.setRequestMethod("POST");
//con.setRequestProperty("Proxy-Connection","Keep-Alive");
con.setRequestProperty("Content-Type","text/html");
con.setDoOutput(true);
con.setDoInput(true);
OutputStreamos=con.getOutputStream();
DataOutputStreamdos=newDataOutputStream(os);
dos.write(postData.getBytes());
dos.flush();
dos.close();
InputStreamis=con.getInputStream();
DataInputStreamdis=newDataInputStream(is);
byted[]=newbyte[dis.available()];
dis.read(d);
data=newString(d,charset);
con.disconnect();
}catch(Exceptionex){
ex.printStackTrace();
log.error("访问"+url+"异常,提交数据:"+postData+"。异常信息:"+ExceptionUtils.getStackTrace(ex));
}
returndata==null?null:data.trim();
}
#2sanxi在2-1911:03回复
Content-Type设得有问题,改成下面的试试
setRequestProperty("Content-type",
"application/json")
#3lg068在2-1913:50回复
改了,还是不得,返回40008
取得的access_token:07c662c7138b448e892c26b5b5937b5a
Post参数:{"button":[{"name":"天气查询","type":"click","key":"queryweather"},{"name":"空气质量查询","type":"click","key":"queryairquality"},{"name":"优质内容","sub_button":[{"name":"每日英语","type":"click","key":"dailyen"},{"name":"知乎每日精选","type":"click","key":"dailyzhihu"},{"name":"每日笑话","type":"click","key":"dailyjoke"}]}]}
Post返回:{"errcode":40008,"errmsg":"不合法的消息类型"}
#4sanxi在2-1913:55回复
post参数已经验证过了,没问题。问题还是出在开发环境上。