Rails Ajax Can't verify CSRF token Authenticity Rails Ajax Can't verify CSRF token Authenticity ajax ajax

Rails Ajax Can't verify CSRF token Authenticity


Assuming you've set the CSRF token using the Rails csrf_meta_tag tag, the request's token will be available in the csrf-token meta tag:

<meta content="u-n-i-q-u-e-t-o-k-e-n" name="csrf-token" />

Since you're using jQuery, you can pass the token to your AJAX request by invoking the following value for the beforeSend key:

function(xhr) {xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'))}


This code is already present in the rails/jquery-ujs, so it is a lot easier to just use that:

 beforeSend: $.rails.CSRFProtection