承接 mhndev/oauth-client 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mhndev/oauth-client

Composer 安装命令:

composer require mhndev/oauth-client

包简介

php open authentication server sdk

README 文档

README

tokens table structure :

    CREATE TABLE tokens (
        client_id TEXT NOT NULL PRIMARY KEY,
        client_secret TEXT NOT NULL,
        credentials TEXT NOT NULL,
        type TEXT NOT NULL,
        expires_at datetime
    );

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);


require_once 'vendor/autoload.php';


$client_id = 1;
$client_secret = 'DONjJxACnkVqzHPoHOoUmfEmUjnDnXJiT0PuqCzO';

$tokenRepository = new \mhndev\oauthClient\repository\TokenRepositorySqlite(
    (new \mhndev\oauthClient\SqLiteConnection(__DIR__.DIRECTORY_SEPARATOR.'db.sqlite'))->connect()
);

$guzzleClient = new \GuzzleHttp\Client();

$guzzleHandler = new \mhndev\oauthClient\handlers\GuzzleHandler(
    $guzzleClient,
    'http://dev.digipeyk.com:8030'
);

// if you want to pass api ednpoints and you are not going to use default endpoints please pass the third argument as follow:
// consider you can just override as many endpoint as you want, and you are not forced to override all endpoints
$guzzleHandler = new \mhndev\oauthClient\handlers\GuzzleHandler(
    $guzzleClient,
    'http://dev.digipeyk.com:8030',
    ['removeIdentifier' => '/api/removeUserIdentifier']
);

$oauth_client = new \mhndev\oauthClient\Client($guzzleHandler, $tokenRepository);

$token = $oauth_client->getClientToken($client_id, $client_secret);

//register endpoint
$user_register = $oauth_client->register(
    'hamid',
    '123456',
    ['email'=>'ma2jid8911303@gmail.com'],
    $token
);

var_dump($user_register);

// whois endpoint

$user_whoIs = $oauth_client->getWhois(
    'email',
    'majid8911303@gmail.com',
    $token
);


var_dump($user_whoIs);

// get Token Info

$tokenValueObject = new \mhndev\valueObjects\implementations\Token(
    $token->getCredentials(), $token->getType()
);

$tokenInfo = $oauth_client->getTokenInfo($tokenValueObject);

var_dump($tokenInfo);



echo '<br><br><br><br><br>';

// now using mock handler instead as handler

$mockHandler = new \mhndev\oauthClient\handlers\MockHandler();

$oauth_client2 = new \mhndev\oauthClient\Client($mockHandler, $tokenRepository);


$tokenFromMock = $oauth_client2->getClientToken('wefwergderf', 'werwrgfer');

var_dump($tokenFromMock);

$result = $oauth_client2->register(
    'majid',
    '123456',
    ['email' => 'majid@gmail.com'],
    new \mhndev\oauthClient\entity\common\Token(
        'Bearer',
        '34r3t354t54tr',
        $client_id,
        $client_secret
    )
);


var_dump($result);

todo : toArray for oauth objects

统计信息

  • 总下载量: 462
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 3
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-04-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固