Java--对接微信第五篇之底部菜单按钮Url设置(通过按钮回调获取Openid)
发布日期:2021-06-29 19:25:24 浏览次数:2 分类:技术文章

本文共 1916 字,大约阅读时间需要 6 分钟。

在上一篇的基础上,有一个地方是需要去微信公众平台设置的(如果你这个url需要获取用户openid的话!如果不需要获取可以无视)

登录微信公众平台-->公众号设置-->选择功能设置-->设置网页授权域名(为微信认为安全的地址,不用精确到方法,但是你需要将一个文本密钥放入对应地址下,微信会在这个地址校验密钥。密钥微信会给你下载)

我放在这里(这是我op项目下的resources/static/open)对应op/open:

这些做完之后,点击保存,微信会给你返回结果。我这边是成功了!如果失败:会有错误信息,一般是找不到那个密钥,看看你的位置是否放正确了!

这些事情做完之后,我们回到上一篇:

组装菜单数据方法getMenu()那:

String redirect_uri = "http://www.你的服务器回调地址.com/op/open/openArticle";

这个地址:BaseAPI.OPEN_URI+"/connect/oauth2/authorize?appid="+ WeiXinUtil.APPID+"&redirect_uri="+redirect_uri+"?category=1&response_type=code&scope=snsapi_base&state=1#wechat_redirect"它的完整地址是:https://open.weixin.qq.com/connect/oauth2/authorize?appid="+ WeiXinUtil.APPID+"&redirect_uri="+redirect_uri+"?category=1&response_type=code&scope=snsapi_base&state=1#wechat_redirect其中appid不用我说了吧。别的东西都不用管,你先看redirect_uri这个地址能否调用你的项目接口例如我的项目接口有这个方法:/**  * 公共文章界面  * @param map  * @return  */ @RequestMapping(value = "/open/openArticle") public String openArticle(ModelMap map,HttpServletRequest request) throws Exception{     String code = request.getParameter("code");//页面授权获取的code用以交换 openid     String openId = OAuthGetOpenid(code);//OAuth获取用户openid区分是哪个用户请求登录W3     map.put("title", "公共文章界面");     map.put("path", path);     map.put("openId",openId);     map.put("category",category);         return "openArticle";    }/**  * 通过页面OAuth授权,用code获取openid  *  * @param code  * @return  */ public String OAuthGetOpenid(String code) throws Exception{     JSONObject json = new JSONObject();     String requestUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid="+WeiXinUtil.APPID+"&secret="+WeiXinUtil.APPSECRET+"&code=" + code + "&grant_type=authorization_code";     String outputStr = "";     json = WeiXinUtil.doPostStr(requestUrl, outputStr);     String openid = json.getString("openid");     logger.info(json+"---------json--------openid-----------"+openid);     return openid; }

到这就完成了。点击菜单按钮之后,我这边可以成功获取到用户的openid,并且成功跳转到指定url页面

转载地址:https://dada-superman.blog.csdn.net/article/details/83823859 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Java--对接微信第六篇之根据请求Url及所需参数返回Json
下一篇:Java--对接微信第四篇之初始化底部菜单

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月04日 06时55分51秒