PHP code example of ezijing / ezijing-sso

1. Go to this page and download the library: Download ezijing/ezijing-sso library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

ezijing / ezijing-sso example snippets




declare(strict_types=1);

return [
    // 版本 V1, V2
    'default_version' => env('SSO_VERSION', 'V1'),
    // 新版sso地址
    'newsso_host' => env('SSO_NEWSSO_API_HOST', ''),
    // 新版sso V2地址
    'usercenter_host' => env('SSO_USERCENTER_HOST', ''),
    // 用户中心地址
    'usercenter_api_host' => env('SSO_USERCENTER_API_HOST', ''),
    // 接口签名使用的盐值
    'salt' => env('SSO_SALT', ''),
    
    'V1' => [
        // 新版sso api
        'newsso_api' => [
            'LOGIN' => '/rest/login',
            'LOGOUT' => '/rest/logout',
            'USERINFO' => '/account/get-user-info',
        ],
        // 用户中心api
        'usercenter_api' => [
            'SEARCH_USER' => '/user/multi-get-user-info',
            'CREATE_USER' => '/user/multi-create-user',
            'CREATE_USER_SINGLE' => '/user/create-user',
            'UPDATE_USER' => '/user/change-info',
            'CHANGE_PWD_BY_COOKIE' => '/user/change-pwd-by-cookie',
            'EXACT_SEARCH_USER' => '/user/exact-search-user',
            'SEARCH_SERVER_USER' => '/user/search-user',
            'SEARCH_SERVER_USER_MULTI' => '/user/multi-get-user-info',
        ],
    ],
    'V2' => [
        // 新版sso api
        'newsso_api' => [
            'LOGIN' => '/v2/frontend/user/login',
            'LOGOUT' => '/v2/frontend/user/logout',
            'USERINFO' => '/v2/frontend/user/get-user-info',
        ],
        // 用户中心api
        'usercenter_api' => [
            'SEARCH_USER' => '/v2/server/user/multi-get-user-info',
            'CREATE_USER' => '/v2/server/user/multi-create-user',
            'CREATE_USER_SINGLE' => '/v2/server/user/create-user',
            'UPDATE_USER' => '/v2/server/user/change-info',
            'CHANGE_PWD_BY_COOKIE' => '/v2/frontend/user/change-pwd-by-cookie',
            'EXACT_SEARCH_USER' => '/v2/server/user/search-user',
            'SEARCH_SERVER_USER' => '/v2/server/user/search-user',
            'SEARCH_SERVER_USER_MULTI' => '/v2/server/user/multi-get-user-info',
        ],
    ],
];


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$ssoApi->withVersion('V2')->login('username', 'password');


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$ssoApi->withVersion('V2')->logout('TGC')


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$user = $ssoApi->withVersion('V2')->getUserInfoByTgc('TGC');


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$data = [
    'username' => '小明',
    'nickname' => '小明',
    'email' => '[email protected]',
    'mobile' => '323232323', 
    'password' => '123456', 
    'country_code' => '86'
];
$user = $ssoApi->withVersion('V2')->createUser($data);


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$data = [
    'username' => '小明',
];
$ssoApi->withVersion('V2')->exactSearchUser($data);


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$data = [
    'username' => '小明',
];
$ssoApi->withVersion('V2')->search($data);


$ssoApi = make(\Ezijing\EzijingSso\Core\Sso::class);
$ssoApi->withVersion('V2')->exactSearchOneUserById('1');


$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$ssoCached
    ->withVersion('V2')
    ->withTgc('TGC')
    ->setUser([
        'id' => 1,
        'username' => '小明'
    ]);


$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$ssoCached
    ->withVersion('V2')
    ->withSsoId('1')
    ->setUser([
        'id' => 1,
        'username' => '小明'
    ]);


$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$user = $ssoCached
    ->withVersion('V2')
    ->withTgc('TGC')
    ->getUser();


$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$user = $ssoCached
    ->withVersion('V2')
    ->withSsoId('1')
    ->getUser();


$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$ssoCached
    ->withVersion('V2')
    ->withTgc('TGC')
    ->clearUserCached();

$ssoCached = make(\Ezijing\EzijingSso\Core\SsoCached::class);
$ssoCached
    ->withVersion('V2')
    ->withSsoId('1')
    ->clearUserCached();
shell
>  php bin/hyperf.php vendor:publish ezijing/ezijing-sso -vvv