站内搜索

微信如何获取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的详细内容,更多请关注php中文网其它相关文章!

  • 上一篇:php实现微信sdk分享接口
  • 下一篇:微信创建自定义目录的方法实例