redirect_uri 参数错误的解决办法
来源:互联网 发布:淘宝追评怎么修改 编辑:程序博客网 时间:2024/06/05 11:14
我通过java代码去获得用户的openid,一直报redirect_uri。我页面代码的链接为:
https://open.weixin.qq.com/connect/oauth2/authorize? appid=APPID& redirect_uri=ENCODE(URL)& response_type=code& scope=snsapi_base& state=state#wechat_redirect"
其中APPID为项目的appid,ENCODE(URL)为链接希望跳转的url地址(url需要urlencode),url的encode在java中代码实现如下:
// url进行编码 String url = "http://evan.tunnel.mobi/zzaClient/bindindex.html"; String url_encode = java.net.URLEncoder.encode(url, "utf-8"); request.setAttribute("url_encode", url_encode);
当前台页面构造完成后,点击页面链接会跳转到bindindex.html的controller,在这个controller的代码写法是:
// 需要在“开发者中心”---网页账号--修改。修改成域名,不要带http 。比如:evan.tunnel.mobi // 通过code获取openid String code = request.getParameter("code"); JsonObject json = WeixinUtils.getOpenId(getopenid_url, app_id, secret, code, "authorization_code"); String openid = json.get("openid").getAsString(); logger.info(openid + "------------------------------openid");
可是奇怪的是,以上所有参数都没有写错,url也进行编码了。但是还是会报redirect_uri 参数错误。解决办法是: 需要在微信公众平台的“开发者中心”—网页账号–修改 把“授权回调页面域名”改成服务器的域名即可。如图:
到这样,openid就可以正常获得了。有些开发者可能会有些疑问,如果我每次更改都要部署到正式环境进行测试,这样多浪费时间,其实我们可以通过ngrok将本地地址映射到外网,这样就可以将开发环境的地址直接映射到外网。具体操作详见博客:
http://blog.csdn.net/zl544434558/article/details/46593063
最后附上一张报错的图片
0 0
- redirect_uri 参数错误的解决办法
- 微信的redirect_uri参数错误解决办法
- 微信的redirect_uri参数错误解决办法
- 微信的redirect_uri参数错误解决办法
- 微信的redirect_uri参数错误解决办法
- 微信的redirect_uri参数错误解决办法
- 微信的redirect_uri参数错误
- redirect_uri参数错误
- redirect_uri参数错误
- 微信开发 支付开发redirect_uri参数错误解决办法
- 微信公众平台中redirect_uri 参数错误解决办法
- 微信redirect_uri参数错误
- 微信redirect_uri参数错误
- 微信 redirect_uri 参数错误
- 微信 redirect_uri参数错误
- 微信开发过程中redirect_uri参数错误的解决方案
- 微信支付开发出现redirect_uri参数错误的解决方法
- 微信的redirect_uri参数错误原因分析
- 关于文档保存格式 new Variant()
- 调用虚拟内存编译时的error处理
- 各种构建工具的优缺点对比
- POJ 1828 Monkeys' Pride(水~)
- 替代test语句的[ ]和[[ ]]表达式有什么区别
- redirect_uri 参数错误的解决办法
- oracle 根据身份证计算年龄
- Mysql中一些比较有用的命令
- 【jQuery插件】-----页面滚动时动画wow.js
- linux scp限速传输
- MySQL详解(20)-----------数据库备份和还原
- 关于java使用jacob调用word,ppt,excel等的转化为html的问题
- android studio上的百度定位的初始化
- Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently