微信开发8------Wx-tools的使用

一、下载jar包wx-tools-2.0.0.jar,并加入项目里

https://download.csdn.net/download/dmw412724/10457645

二、在项目本资源里放一个wx.properties,里面保存这个公众号的基本信息

wx.appId=wx1ed9
wx.appSecret=bcb647b7
wx.token=12345
wx.aesKey=
wx.mchId=

三、创建菜单

public class WxTest {
	public static IService iService = new WxService();
	
	public void createMenu() throws WxErrorException{
		//创建一个菜单
		WxMenuButton menuButton = new WxMenuButton();
		
		menuButton.setName("百度");
		menuButton.setType(WxConsts.BUTTON_VIEW);
		menuButton.setUrl("http://www.baidu.com");
		//菜单集合
		List<WxMenuButton> buttons = new ArrayList<WxMenuButton> ();
		buttons.add(menuButton);
		WxMenu menu = new WxMenu();
		menu.setButton(buttons);
		iService.createMenu(menu , false);
	}
	public static void main(String[] args) throws Exception {
		new WxTest().createMenu();
		
	}
}

四、wx回调网址

@Resource
	private IService iService;
	
	@RequestMapping("/webMessageUrl")
	public String webMessageUrl(HttpServletRequest request,String signature,String timestamp,String nonce,String echostr) throws IOException{			 
		//校验发来的信息的合法性
		if (iService.checkSignature(signature, timestamp, nonce, echostr)){
			//把发来的xml的信息解码成对象。然后做进一步的操作
			WxXmlMessage wxXmlMessage = XStreamTransformer.fromXml(WxXmlMessage.class, request.getInputStream());
			log.info(wxXmlMessage);
			
			return StringUtils.isBlank(echostr)? SUCCESS: echostr;
		}	
		return null;
	}
但是这一步操作xml需要的xstream的版本要高一些,至少要高于1.4.5

猜你喜欢

转载自blog.csdn.net/dmw412724/article/details/80568017