Я использую Rails 4.2.4 и не могу понять, почему я получаю:
Can't verify CSRF token authenticity
У меня в макете:
<%= csrf_meta_tags %>
В контроллере:
protect_from_forgery with: :exception
Invoking tcpdump -A -s 999 -i lo port 3000
показывал устанавливаемый заголовок (несмотря на то, что нет необходимости устанавливать заголовки с помощью ajaxSetup
- это уже было сделано):
X-CSRF-Token: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
DNT: 1
Content-Length: 125
authenticity_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В конце концов это не помогло, потому что у меня были отключены куки. CSRF не работает без включенных файлов cookie, поэтому это еще одна возможная причина, если вы видите эту ошибку.