ThinkPHP接入EasyWechat

使用EasyWechat接入用户登录,获取用户信息

官方文档

<?php

namespace app\index\controller;

use EasyWeChat\Factory;
use think\Controller;

class EasyWechat extends Controller
{
    protected $app;
    public function _initialize()
    {
        $config = [
            'app_id'        => 'wx5d2f01e8ab9532dc',
            'secret'        => 'f36d7f5c26d76662d533c29072a4f5e5',
            'token'         => 'JOfggDDrVhODrrGqnfRUvTGvthXdvtzV',
            'aes_key'       => '', // EncodingAESKey,兼容与安全模式下请一定要填写!!!
            // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
            'response_type' => 'array',

            'log'           => [
                'level' => 'debug',
                'file'  => __DIR__ . '/wechat.log',
            ],
            /**
             * OAuth 配置
             *
             * scopes:公众平台(snsapi_userinfo / snsapi_base),开放平台:snsapi_login
             * callback:OAuth授权完成后的回调页地址
             */
            'oauth'         => [
                'scopes'   => ['snsapi_userinfo'],
                'callback' => 'http://lj.lxx123.club/index/Easy_Wechat/oauth_callback',
            ],
        ];

        $this->app = Factory::officialAccount($config);
    }
    /**
     * 微信接入地址,验证echostr
     * @return [type] [description]
     */
    public function response_echostr()
    {
        $this->app->server->serve()->send();
        die;
    }
    /**
     * 授权地址
     * @return [type] [description]
     */
    public function index()
    {
        $response = $this->app->oauth->scopes(['snsapi_userinfo'])->redirect();
        $response->send();
    }
    /**
     * 授权成功跳转地址,获得用户信息
     * @return [type] [description]
     */
    public function oauth_callback()
    {
        $user = $this->app->oauth->user();
        // $user 可以用的方法:
        // $user->getId();  // 对应微信的 OPENID
        // $user->getNickname(); // 对应微信的 nickname
        // $user->getName(); // 对应微信的 nickname
        // $user->getAvatar(); // 头像网址
        // $user->getOriginal(); // 原始API返回的结果
        // $user->getToken(); // access_token, 比如用于地址共享时使用
    }
}
文章来源: ThinkPHP接入EasyWechat

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:ThinkPHP接入EasyWechat