Ответы пользователя по тегу CSRF
  • Нужно ли использовать CSRF token в Ajax Post запросах без форм и ввода данных?

    sintez
    @sintez
    Я не знаю как конкретно в Laravel, но в принципе CSRF токен должен передаваться при любых POST запросах на сервер.
    UPD:
    Почитал документацию к Laravel, там все доходчиво написано. Получить токен можно с помощью <?php echo csrf_token(); ?>. Т.к. у вас нет форм, то можно сделать следующим образом:
    1. В header добавить тег
    <meta name="_token" content="<?php echo csrf_token(); ?>">

    2. Далее, если вы используете jQuery, то добавление токена в запрос будет выглядеть следующим образом.
    var csrftoken = $('meta[name=_token]').attr('content');
    $.ajaxSetup({
        beforeSend: function (xhr, settings) {
            if (!/^(GET|HEAD|OPTIONS|TRACE)$/i.test(settings.type)) {
                xhr.setRequestHeader("X-CSRFToken", csrftoken)
            }
        }
    });
    Ответ написан
    6 комментариев