网页受权出现redirect_uri参数错误

刚才在作微信网页受权的时候,发生一个错误!!!微信网页受权redirect_uri 参数错误!php

微信网页受权redirect_uri 参数错误

遇到问题,第一时间应该作的就是查看官网微信公众平台的技术文档。html

微信网页受权

若是用户在微信客户端中访问第三方网页,公众号能够经过微信网页受权机制,来获取用户基本信息,进而实现业务逻辑。api

关于网页受权回调域名的说明安全

一、在微信公众号请求用户网页受权以前,开发者须要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页账号 - 网页受权获取用户基本信息”的配置选项中,修改受权回调域名。请注意,这里填写的是域名(是一个字符串),而不是URL,所以请勿加 http:// 等协议头; 微信

二、受权回调域名配置规范为全域名,好比须要网页受权的域名为:www.qq.com,配置之后此域名下面的页面http://www.qq.com/music.html 、 http://www.qq.com/login.html 均可以进行OAuth2.0鉴权。但http://pay.qq.com 、 http://music.qq.com 、 http://qq.com没法进行OAuth2.0鉴权 app

三、若是公众号登陆受权给了第三方开发者来进行管理,则没必要作任何设置,由第三方代替公众号实现网页受权便可。微信公众平台

检查微信受权的网页服务。curl

 

网页账号   网页受权获取用户基本信息     无上限     修改   this

    

点击修改,进去把http://www.xxxx.cn 改成www.xxxx.cn就不会出现redirect_uri 参数错误!url

注意:http://www.xxxx.cn这样是能够经过网页受权安全监测的,咱们不知道这是有问题的,后来程序执行调用的时候发现redirect_uri 参数错误,查看文档,回来发现,原来是这里的错误。

//获取用户的openid
  function getBaseInfo(){
   //1.获取到code
   $appid="qq1813284q1q6q8888";//这里的appid是假的演示用
   $redirect_uri=urlencode("http://www.xxxx.cn/xxx.php/Index/getUserOpenId");//这里的地址须要http://
   $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect";
   header('location:'.$url);
  }

  function getUserOpenId(){
   //2.获取到网页受权的access_token
   $appid="qq1813284q1q6q8888";//这里的appid是假的演示用
   $appsecret="61qqqq36745987167q73bq1q2552qq75";//这里的appsecret是假的演示用
   $code=$_GET['code'];
   $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code ";
   //3.拉取用户的openid
   $res = $this->http_curl($url,'get');

 var_dump($res);//打印便可看到用户的openid

}

相关文章
相关标签/搜索