server.php 975 B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: chendeben
  5. * Date: 2019-01-11
  6. * Time: 17:15
  7. */
  8. $dsn= 'mysql:dbname=oauth_test;host=192.168.41.215:3307';
  9. $username = 'root';
  10. $password = 'root';
  11. // 错误报告(这毕竟是一个演示!)
  12. ini_set('display_errors',1);error_reporting(E_ALL);
  13. // 自动加载
  14. require_once('vendor/autoload.php');
  15. $storage = new OAuth2\Storage\Pdo(array('dsn' => $dsn, 'username' => $username, 'password' => $password));
  16. // 通过存储对象或对象数组存储的oauth2服务器类
  17. $server = new OAuth2\Server($storage);
  18. // 授权码 有效期只有30秒
  19. $server->addGrantType(new OAuth2\GrantType\AuthorizationCode($storage));
  20. // 客户端证书
  21. $server->addGrantType(new OAuth2\GrantType\ClientCredentials($storage));
  22. // 用户凭据
  23. $server->addGrantType(new OAuth2\GrantType\UserCredentials($storage));
  24. // 刷新令牌 启用这个会报错,原因未知
  25. $server->addGrantType(new OAuth2\GrantType\RefreshToken($refreshStorage));