Авторизация Laravel возвращает 403, даже если политика возвращает truePhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Авторизация Laravel возвращает 403, даже если политика возвращает true

Сообщение Anonymous »

Я использую Laravel 11, Vue 3 и InertiaJS.
Я пытаюсь заставить работать авторизацию, но она продолжает возвращать 403, даже если политика возвращает true. >
Инерционная ссылка условно показывает (успешно) ссылку на форму редактирования данного сообщения: Оба приведенных ниже маршрута не работают, я пробовал с промежуточным программным обеспечением ('auth') и без него.

Код: Выделить всё

Route::get( 'posts/{post}/edit',  [PostController::class, 'edit'])->name('posts.edit')
->middleware('auth')->can('update', 'post');

Route::get( 'posts/{post}/edit',  [PostController::class, 'edit'])->name('posts.edit')
->can('update', 'post');
и PostPolicy:

Код: Выделить всё

public function update(User $user, Post $post): bool
{
return $user->id === $post->user_id;
}

Код: Выделить всё

dd($user->id === $post->user_id); // returns true
Похоже, что журналы также не обнаруживают сообщение 403, поэтому я не вижу там трассировки стека. Я в полной растерянности, в чем тут проблема?
Я пробовал с промежуточной аутентификацией и без нее, но безуспешно. Непосредственное размещение Gate::authorize внутри контроллера тоже не сработало.

Подробнее здесь: https://stackoverflow.com/questions/790 ... turns-true
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»