Я разрабатываю сервер oAuth 2.0, используя библиотеку phpleague, предоставленную Алексом Билби. Но после инициализации сервера авторизации, когда я объявляю классы хранилища, он выдает следующую ошибку.
«Неустранимая ошибка: класс« Storage \ SessionStorage »не найден»
Пожалуйста, помогите мне решить эту проблему. Я прочитал ваш пост об этой проблеме здесь: — Руководство по реализации PHP-сервера Oauth2 с использованием библиотеки phpleague
Пожалуйста, дайте мне знать, как я могу реализовать классы хранения. Мой текущий код:
require_once "/../vendor/autoload.php";
$server = new \League\OAuth2\Server\AuthorizationServer;
$server->setSessionStorage(new Storage\SessionStorage);
$server->setAccessTokenStorage(new Storage\AccessTokenStorage);
$server->setClientStorage(new Storage\ClientStorage);
$server->setScopeStorage(new Storage\ScopeStorage);
$server->setAuthCodeStorage(new Storage\AuthCodeStorage);
$authCodeGrant = new \League\OAuth2\Server\Grant\AuthCodeGrant();
$server->addGrantType($authCodeGrant);
Используемая библиотека требует реализации собственных классов хранения, см. http://oauth2.thephpleague.com/implementing-storage-interfaces/. Имена классов, которые вы используете, взяты из примера реализации https://github.com/thephpleague/oauth2-server/tree/master/examples/relational/Storage который использует Capsule в качестве своего хранилища. Если вы хотите использовать Capsule в качестве бэкэнда, вам нужно скачать эти примеры классов реализации и установить https://github.com/illuminate/database.
Других решений пока нет …