微信如何获取openid

本文主要和大家分享微信如何获取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['code'];
        //echo htmlspecialchars($code);exit;
        $appid='wx**********';  //APPID
        $appsecret='**************';  //APP密钥
        $url='https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';
        $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, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)' );
        //即表示自动进行跳转抓取(如果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['access_token'];
        $openid=$res['openid'];
        //跳转到抽奖页面
        header('Location: http://wx.xxoo.com/test/index/index/openid/'.$openid);
    }

这样可以通过获取openid来识别每一个微信用户。

相关推荐:

微信小程序获取openid及用户信息的方法

微信小程序之获取session_key与openid的案例(图)

微信公众号开发网页中及时获取当前用户Openid及注意事项

以上就是微信如何获取openid的详细内容,更多请关注编程之家其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


网页授权获取用户信息的方法
报错config:invalid signature的解决方案
微信开发百思不得姐实战教程
详解微信开发input输入框
教你libco是如何支撑巨大数据信息量的
微信二次开发之文本消息请求与发送
微信开发H5轻游戏
scroll-view完成列表页的方法详解
Java微信开发之自定义菜单的创建
微信开发之input控件的实例详解
微信开发Emoji表情的实例教程
微信开发中详解textarea的使用方法
微信开发中使元素占满全屏的方法介绍
微信开发之数据访问的方法详解
微信二次开发之各类型消息封装
微信开发之数据库操作
如何获取微信好友的地理位置信息
分享3款微信开发开源框架
微信开发之获取服务器IP
微信开发之公交换乘功能代码详解