• 抓取用户openid


    获取用户微信openid用户无感知情况下 传参为 appid appsecret 当前网址 session_name名称

    <?php
    //获取微信的openid
    function get_wx_str($appid,$appsecret,$link,$session_name='')
    {
        if(empty($link))
        {
            $link = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
        }
        parse_str($_SERVER['QUERY_STRING'], $query);
        if(!isset($query['code']))
        {
            //未授权
            $redirect = urlencode($link);
            $url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=" . $redirect . "&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect";
            redirect($url);
        }else
        {
            //已授权
            $code = $query['code'];
            $jsoninfo = get_wx_openid($appid,$appsecret,$code);
            $user_str = $jsoninfo['openid'];
            if($session_name!='')
            {
                $_SESSION[$session_name] = $user_str;
            }else
            {
                $_SESSION['user_str'] = $user_str;
            }
        }
    }
    
    //通过code换取网页授权access_token
    function get_wx_openid($appid,$appsecret,$code)
    {
        $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code";
        $output = https_request($url);
        $jsoninfo = json_decode($output, true);
        return $jsoninfo;
    }
    ?>
  • 相关阅读:
    京东精益敏捷教练分享:敏捷助力产品创新!
    设计规范 | 详解组件控件结构体系
    Axure响应式进阶
    通讯录表设计
    TEST1
    c#练习四单元总结
    窗体控件应用总结(1)
    .NET(c#理解)
    test2-11
    test1-1
  • 原文地址:https://www.cnblogs.com/lizhaoyao/p/5640916.html
Copyright © 2020-2023  润新知