>백엔드 개발 >PHP 튜토리얼 >Laravel 5.5 Ajax 오류 419: CSRF 토큰 문제를 해결하는 방법은 무엇입니까?

Laravel 5.5 Ajax 오류 419: CSRF 토큰 문제를 해결하는 방법은 무엇입니까?

DDD
DDD원래의
2024-12-06 13:48:17459검색

Laravel 5.5 Ajax Error 419: How to Fix CSRF Token Issues?

Laravel 5.5 Ajax 호출 오류: 419(알 수 없는 상태)

Laravel 5.5에서 Ajax 호출을 수행할 때 다음과 같은 오류가 발생할 수 있습니다. "419(알 수 없는 상태)"라는 메시지가 표시됩니다. 이는 일반적으로 CSRF(Cross-Site Request Forgery) 보호 메커니즘의 문제로 인해 발생합니다. 이 문제를 해결하는 방법은 다음과 같습니다.

CSRF 토큰이 사용 가능한지 확인

Laravel은 악의적인 요청이 실행되는 것을 방지하기 위해 CSRF 토큰이 필요합니다. 블레이드 템플릿의 헤더 섹션에 CSRF 토큰 메타 태그가 있는지 확인하세요.

<meta name="csrf-token" content="{{ csrf_token() }}" />

Ajax에서 CSRF 토큰에 액세스

자동으로 검색하도록 Ajax 요청을 구성하세요. 헤더에 CSRF 토큰을 포함합니다:

$.ajaxSetup({
  headers: {
    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  }
});

예제 업데이트됨 코드:

$('.company-selector li > a').click(function(e) {
     e.preventDefault();

     var companyId = $(this).data("company-id");

     $.ajaxSetup({
        headers: {
          'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
     });

      $.ajax({
          url: '/fetch-company/' + companyId,
          dataType : 'json',
          type: 'POST',
          data: {},
          success:function(response) {
               console.log(response);
          }
     });
  });

추가 팁

CSRF 보호에 대한 자세한 내용은 Laravel 문서를 참조하세요: https://laravel.com/docs/ 5.5/csrf

위 내용은 Laravel 5.5 Ajax 오류 419: CSRF 토큰 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.