Я хочу попробовать с этим примером OAuth2-сервера ( https://github.com/alexbilbie/oauth2-example-auth-server
), но когда я хочу его запустить, он дает мне ошибку " Fatal error: Interface 'OAuth2\Storage\ClientInterface' not found in /var/www/oauth2-auth-server/model_client.php on line 2 "
Я думаю, мне нужно добавить автозагрузчик в composer.json. Я сделал это, но навсегда это дает мне эту ошибку. Но я также думаю, что в oauth.php я нашел эту строку:
// Initiate the auth server with the models $server = new \OAuth2\AuthServer(new ClientModel, new SessionModel, new ScopeModel);
Но в папке OAuth нет какого-либо AuthServer
? Кто-нибудь использовал этот пример. Заранее спасибо!
Автозагрузка выполняется автоматически с использованием Composer при условии, что вы загрузили зависимости из модулей, указанных в require
ключе вашего файла composer.json
. Просто включите это в начало своего PHP-скрипта, чтобы получить доступ к классам:
require_once __DIR__.'/to/vendor/autoload.php';
Если это пакеты, загруженные вручную, вам нужно указать автозагрузчик им и запустить composer update
:
"autoload": { "psr-0": { "Util\\": "assets/" }, "files": ["assets/Util/init.php"] }
Вышеприведенное автоматически:
assets/Util/init.php
к каждому файлу, в котором запускается автозагрузчик; assets/Util/
) в любой файл, который запускает автозагрузчик Вам также может потребоваться управлять проблемами пространства имен с помощью use Namespace\Class as Class;
синтаксис.