Как отключить проверку CSRF на маршрутах API в laravel?
В API routes
я вызываю функцию через метод POST и GET.GET methord, возвращающий данные, но метод POST-метода не нашел исключение.
Вот мой пример кода в routes/api.php
Route::post('hellopostapi', function() {
return json_encode( 'we are getting POST response');
});
Route::get('helloget', function() {
return json_encode( 'we are getting GET response);
});
Для вызова GET я получаю ответ, как и ожидалось.И для POST я получаю это исключение
"message": "", "exception": "Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException",
"file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 255,
"trace": [
{
"file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 242,
"function": "methodNotAllowed",
"class": "Illuminate\\Routing\\RouteCollection",
"type": "->"
},
{
"file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 176,
"function": "getRouteForMethods",
"class": "Illuminate\\Routing\\RouteCollection",
"type": "->"
},
Я также добавил маршруты api в verifycsrf.php, в соответствии с документацией он должен работать, к сожалению, он не работает для меня.вот мой verifiycsrf.php
class VerifyCsrfToken extends BaseVerifier
{
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'api/*',
];
}
скриншот тестирования API POST-запрос, который вызывает проблему
Получить запрос, которыйработает нормально Это все еще не работает.Может кто-нибудь, пожалуйста, помогите мне. Спасибо