Ответ 1
Короткое разрешение: Добавьте эти строки в файл routes.php:
Route::get('securimage', ['as' => 'securimage', 'uses' => '\Yhbyun\Securimage\[email protected]']);
Route::get('securimage/audio', ['as' => 'securimage.audio', 'uses' => '\Yhbyun\Securimage\[email protected]']);
Route::get('securimage/check', ['as' => 'securimage.check', 'uses' => '\Yhbyun\Securimage\[email protected]']);
Здесь я объясню, почему
Проблема в этом случае заключается в том, что пакет определяет свои маршруты в /vendor/yhbyun/laravel-securimage/src/SecurimageServiceProvider.php следующим образом:
$app['router']->get('securimage', ['as' => 'securimage', 'uses' => 'Yhbyun\Securimage\[email protected]']);
$app['router']->get('securimage/audio', ['as' => 'securimage.audio', 'uses' => 'Yhbyun\Securimage\[email protected]']);
$app['router']->get('securimage/check', ['as' => 'securimage.check', 'uses' => 'Yhbyun\Securimage\[email protected]']);
Если вы запустите php artisan route:list
, вы увидите, что не применяется промежуточное ПО, поскольку в файле Laravel Kernel.php только маршруты, определенные в route.php, сгруппированы с использованием промежуточного программного обеспечения "web":
Route::group([
'middleware' => 'web',
'namespace' => $this->namespace,
], function ($router) {
require base_path('routes/web.php');
});
Группа промежуточного программного обеспечения содержит промежуточное ПО для запуска сеансов:
'web' => [
// ....
\Illuminate\Session\Middleware\StartSession::class,
// .....
],
Возможно, кто-то хочет создать запрос на растяжение для версий Laravel, которые уже используют промежуточное программное обеспечение "web". Это может быть что-то вроде (внутри SecurimageServiceProvider.php):
$app['router']->group(['middleware' => 'web'], function() use ($app) {
$app['router']->get('securimage', ['as' => 'securimage', 'uses' => 'Yhbyun\Securimage\[email protected]']);
$app['router']->get('securimage/audio', ['as' => 'securimage.audio', 'uses' => 'Yhbyun\Securimage\[email protected]']);
$app['router']->get('securimage/check', ['as' => 'securimage.check', 'uses' => 'Yhbyun\Securimage\[email protected]k']);
});