本文主要和大家分享微信如何获取openid,首先要明确一点,你要用户授权,是需要引导用户到你的授权页面的。
1、你得有个链接
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID redirect_uri=URI response_type=code scope=snsapi_userinfo state=STATE#wechat_redirect
说明:
APPID是你的微信公众号ID,以wx开头
URI为你的授权入口,一般是微信公众号指向的主域名下,我这里放在了:http://www.xxoo.com/home/index/test
注意转义,所以 URI=http%3A%2F%2Fwww.xxoo.com%2Fhome%2Findex%2Ftest
2、这个链接可以生成二维码给人家扫,比如到这个网站:https://cli.im/
把上面替换好的链接填进去,生成即可。
3、获取openid的代码
function test(){ $code=$_GET[ #39;code #39;]; //echo htmlspecialchars($code);exit; $appid= #39;wx********** #39;; //APPID $appsecret= #39;************** #39;; //APP密钥 $url= #39;https://api.weixin.qq.com/sns/oauth2/access_token?appid= #39;.$appid. #39; secret= #39;.$appsecret. #39; code= #39;.$code. #39; grant_type=authorization_code #39;; $header [] = content-type: application/json; charset=UTF-8 $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $url ); //请求的方式是post curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, GET ); // 禁用后cURL将终止从服务端进行验证 curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE ); //不检查证书 curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE ); //发送头部字段 curl_setopt ( $ch, CURLOPT_HTTPHEADER, $header ); //告诉对方 自己的浏览器型号 curl_setopt ( $ch, CURLOPT_USERAGENT, #39;Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) #39; ); //即表示自动进行跳转抓取(如果URL发生了302重定向)继续抓取 curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 ); //自动重定向开启 curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 ); //发送的post参数 //curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); //得到的结果不显示在屏幕上,作为变量结果储存 curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true ); $res = curl_exec ( $ch ); //如果运行错误,返回一个错误号 $flat = curl_errno ( $ch ); if ($flat) { $data = curl_error ( $ch ); curl_close ( $ch ); //拿到了返回结果后json格式转化为可以使用的数组格式 $res = json_decode ( $res, true ); //$access_token=$res[ #39;access_token #39;]; $openid=$res[ #39;openid #39;]; //跳转到抽奖页面 header( #39;Location: http://wx.xxoo.com/test/index/index/openid/ #39;.$openid); }
这样可以通过获取openid来识别每一个微信用户。
相关推荐:
微信小程序获取openid及用户信息的方法
微信小程序之获取session_key与openid的案例(图)
微信公众号开发网页中及时获取当前用户Openid及注意事项
以上就是微信如何获取openid的详细内容,更多请关注php中文网其它相关文章!
微信app下载
微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!