redirect_uri 参数错误的解决办法

原创 2015年07月07日 10:13:29

我通过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

最后附上一张报错的图片
这里写图片描述

微信登录报错:redirect_uri域名与后台配置不一致,错误码10003

报错如上。(如果按照我的方法不能解决,请继续百度。。我目前只会该方法,也不打算继续深究) 原因: 公众号配置的回调域名与请求的域名不一致。 猜测原因:在微信公众号端近期更改了域名,或者在配置文件里...
  • Pianker
  • Pianker
  • 2018-01-03 11:26:49
  • 53574

微信开发出现 redirect-uri参数错误原因是设置回调页面域名不要加HTTP://

OAuth2.0 网页授权设置,回调页面域名不要加HTTP:// NND  微信的研发,你程序处理下很麻烦吗?给个提示很麻烦吗?让我查了1个多小时。...
  • Naola2001
  • Naola2001
  • 2015-07-01 19:30:12
  • 39485

微信的redirect_uri参数错误解决办法

可能原因1:授权目录 支付授权目录是网站发起请求的页面所在目录,并且必须是能通过url地址访问的(与真实物理目录路径无关)。注意这个目录在注册填写时,需要精确到最细一级的且使用名称后直接加文件名,不...
  • u014033756
  • u014033756
  • 2016-07-26 17:50:20
  • 74713

微信登录失败——授权回调域名校验出错,错误码:10003原因及解决办法

配置文件这个路径是对应的微信端页面和JS相关的域名;不是后台的域名,对于前后端完全分离有不同域名的,要分清了; 微信授权回调页面域名和JAVA后台配置文件中的域名不一致,会导致微信登录失败——授...
  • qq_29290295
  • qq_29290295
  • 2017-10-13 10:21:35
  • 50172

微信第三方网页授权关于回调域名的问题

最近一直在做微信第三方的开发,在微信公众平台里的开发文档上关于微信网页授权使用到了OAuth2.0,在使用中需要配置指定的链接 https://open.weixin.qq.com/connect/...
  • fanwl
  • fanwl
  • 2016-05-13 13:56:43
  • 28334

微信登录失败,redirect_uri域名与后台配置不一致,错误代码10003

微信登录失败,redirect_uri域名与后台配置不一致,错误代码100031.先检查网页的授权域名  不要带http://2. 检查下自己的appid是否正确如果baidu了很久依然没有解决这个问...
  • jogewang
  • jogewang
  • 2018-03-22 09:53:33
  • 1310

微信公众号开填坑指南之——redirect_uri域名与后台配置不一致 10003

获取code并重定向到回调地址链接:https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx702a005562417853&a...
  • qq_29871381
  • qq_29871381
  • 2018-03-20 18:41:34
  • 525

微信支付:授权回调地址校验错误,错误码10003

微信支付:授权回调地址校验错误,错误码10003
  • u014185140
  • u014185140
  • 2017-10-25 21:42:12
  • 11010

微信开发 提示 Redirect_uri参数错误解决方法

redirect_uri 参数错误
  • tengdazhang770960436
  • tengdazhang770960436
  • 2016-04-30 16:09:52
  • 112080

微信的redirect_uri参数错误原因分析

如果没有看过微信wiki文章的用户请参考这个地址: http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html%2...
  • zhuzj12345
  • zhuzj12345
  • 2017-08-14 17:18:59
  • 1238
收藏助手
不良信息举报
您举报文章:redirect_uri 参数错误的解决办法
举报原因:
原因补充:

(最多只允许输入30个字)