Промежуточное ПО VerifyCsrfToken
проверяет действительный токен csrf. Он запускается до ваших пользовательских промежуточных программ.
По умолчанию ваши запросы ajax не включают токен csrf.
Если вы делаете запросы от своего веб-интерфейса, просто добавьте токен csrf в свои запросы. Например, Ax ios:
window.axios = require('axios');
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
Если вы хотите получить доступ к своему API-интерфейсу вне внешнего интерфейса, рассмотрите возможность перемещения ваших маршрутов API в выделенный файл routes/api.php
или отключение защиты csrf на следующих маршрутах: Документы
namespace App\Http\Middleware;
class VerifyCsrfToken extends Middleware
{
protected $except = [
'stripe/*',
'http://example.com/foo/bar',
'http://example.com/foo/*',
];
}
Кроме того, как предложил @ matei-mihai, используйте JsonResponse для возврата массива