Удалить CSRF токен только для одного метода-Laravel
Я использую paytabs payment gateway api. В этом api должен быть указан url-адрес перенаправления, чтобы после завершения транзакции страница автоматически перенаправлялась на указанный вами url-адрес перенаправления. URL-адрес был получить URL-адрес, но поскольку ответ на API приходит как сообщение типа, я не смог использовать получить URL-адрес. Чтобы решить эту проблему, я сделал этот маршрут url-адресом POST, но, сделав его методом post, я не получаю никакого маркера CSRF. В конце концов, я получаю этот вопрос.
TokenMismatchException in VerifyCsrfToken.php line 68:
Существует ли какой-либо способ, которым я можно ли отключить функциональность токенов CSRF только для одного url-адреса POST?
--ПРЕДЛОЖЕНИЕ ПОПРОБОВАЛ--
Я сделал это в соответствии с вашим предложением
class VerifyCsrfToken extends Middleware
{
protected $except = [
'signup/complete',
];
}
А теперь получаем
Class 'Middleware' not found
2 ответов:
Из документов:
Обычно такие маршруты следует размещать вне группы промежуточного программного обеспечения web, которую RouteServiceProvider применяет ко всем маршрутам в файле
routes/web.php. Однако вы также можете исключить маршруты, добавив их URI в свойство $except промежуточного ПОVerifyCsrfToken:class VerifyCsrfToken extends Middleware { protected $except = [ 'stripe/*', 'http://example.com/foo/bar', 'http://example.com/foo/*', ]; }
Вы можете исключать в CSRF middleware. перейдите в раздел app / http / Middleware / VirefyCsrfToken.php
class VerifyCsrfToken extends BaseVerifier{ protected $except = [ 'route url1', 'route url2', ] }
Comments