微信接口-获取用户openid基本信息

时间:2021-11-01 23:00:22

一、协助获取微信用户openid功能

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URL&response_type=code&scope=snsapi_base#wechat_redirect

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=SECRET

二、实现方法

/*
* 跳转到指定页面获取微信access_token代码
* @param string $appid:微信公众号的appid(具有网页授权接口)
* @param string $redirecturl:指定跳转的获取access_token的url
* @param string $scope:snsapi_userinfo为获取用户基本信息,snsapi_base为获取用户openid
*/

function get_access_token($appid,$redirecturl,$scope='snsapi_userinfo'){
  $redirecturl = urlencode($redirecturl);
  $url = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri='.$redirecturl.'&response_type=code&scope='.$scope.'&state=123#wechat_redirect';
  header("location:".$url);
  exit;
}

/*
* 通过网页授权获取微信用户基本信息
* @param string $appid:微信公众号的appid(具有网页授权接口)
* @param string $appsecret:微信公众号的$appsecret
* @param string $code:get_access_token方法返回的代码
*/

function get_weixin_info($appid,$appsecret,$code){
  $url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';
  $rs = file_get_contents($url);
  $rs = json_decode($rs,TRUE);
  return $rs;
}