easywechat 网页授权登录

使用easyWeChat进行微信网页的授权登录

public function __construct ( Request $request = null ){
        parent::__construct();
        $this->config = [
            'app_id' => 'wx11ca*****98df5',
            'secret' => 'f860284********2d732d0beae9',
            // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
            // 'response_type' => 'array',
            'oauth' => [
                'scopes'   => ['snsapi_userinfo'],
                'callback' => '/wx_callback',
            ],
        ];
    }
    //登录操作
    public function login(){
        if(session('wechat_user')){
            $this->redirect('/index2',302);
        }
        $app = Factory::officialAccount($this->config);
        // 未登录,跳转到登录界面
        if (!session('wechat_user')) {
            $oauth = $app->oauth;
            return $oauth->redirect();
        }
    }
    //保存登录信息
    public function wx_callback(){
        $code = input('code','');
        $app = Factory::officialAccount($this->config);
        $user = $app->oauth->user()->toArray();
        session('wechat_user',$user);
        $user_data['openid'] = $user['id'];
        $user_data['name'] = $user['name'];
        $user_data['pic'] = $user['avatar'];
        $user_data['ctime'] = time();
        $user_data['ip'] = request()->ip();
        $user_data['sex'] = $user['original']['sex'];
        $user_data['address'] = $user['original']['country'].'-'.$user['original']['province'].'='.$user['original']['city'];
        $is = Db::name('user')->where(['openid'=>$user_data['openid']])->find();
        if(!$is){
            $res = Db::name('user')->insert($user_data);
            $is = Db::name('user')->where(['openid'=>$user_data['openid']])->find();
        }
        if($is){
            $this->redirect('/index2',302);
        }else{
            echo 'err';
        }

    }

	//首页
    public function index2(){
        if(!session('wechat_user')){
            $this->redirect('/login',302);
        }
        $seo['title'] = config()['web']['site_title'];
        $seo['keywords'] = config()['web']['site_keywords'];
        $seo['description'] = config()['web']['site_description'];
        $this->assign('seo', $seo);
        $app = Factory::officialAccount($this->config);
        $this->assign('app', $app);
        return view($this->tpl);
    }
    

出现的问题

打开的页面出现如下信息

image-20200826150321541

找到如下目录,可以隐藏或者删除html

image-20200826150539104

高颜值后台管理系统免费使用 ### 子枫后台管理系统 ###,可在宝塔面板直接安装

欢迎关注我的公众号:子枫的奇妙世界,获得独家整理的学习资源和日常干货推送。
如果您对我的其他专题内容感兴趣,直达我的个人博客:www.wangmingchang.com

posted @ 2020-08-26 22:38  程序员子枫  阅读(1984)  评论(0编辑  收藏  举报