Тонкий каркас не работает должным образом с помощью Composer (класс не найден) - PullRequest
0 голосов
/ 13 июня 2019

Вы можете мне помочь? У меня странная проблема. Во-первых, я загружаю это https://github.com/tuupola/slim-jwt-auth, используя композитор:

composer require tuupola/slim-jwt-auth

После этого я создал файл php: teste.php:

require 'vendor/autoload.php';

$app = new Slim\App;

$app->add(new \Slim\Middleware\JwtAuthentication([
    "secret" => "teste",
    "callback" => function ($options) use ($app) {
        $app->jwt = $options["decoded"];
    }
]));

$app->get("/user", function () {
    print_r($app->jwt);
});

$app->run();

А теперь я получаю эту ошибку:

PHP message: PHP Fatal error:  Uncaught Error: Class 'Slim\App' not found

Это не имеет смысла, так как я правильно использовал композитор

Как я могу решить это? Я потратил много часов, пытаясь исправить это самостоятельно, и мне это не удалось. Спасибо!

1 Ответ

0 голосов
/ 13 июня 2019

Прежде всего, вам нужно добавить платформу Slim в ваш пакет Composer. Вы можете сделать это, запустив:

composer require slim/slim

Что касается другой проблемы, то конструктор, который вы используете для промежуточного программного обеспечения, неверен Должно быть: new Tuupola\Middleware\JwtAuthentication.

Ваш полный код должен быть следующим:

require 'vendor/autoload.php';

$app = new Slim\App;

$app->add(new Tuupola\Middleware\JwtAuthentication([
    "secret" => "teste",
    "callback" => function ($options) use ($app) {
        $app->jwt = $options["decoded"];
    }
]));

$app->get("/user", function () {
    print_r($app->jwt);
});

$app->run();
...