Я работал над новым Rails 4-приложением (на Ruby 2.0.0-p0), когда я столкнулся с некоторыми проблемами токен аутентификации.
При написании контроллера, который отвечает на json (с помощью метода класса respond_to
), я получил действие create
, которое начал получать исключения ActionController::InvalidAuthenticityToken
, когда я попытался создать запись, используя curl
.
Я убедился, что установил -H "Content-Type: application/json"
, и я установил данные с помощью -d "<my data here>"
, но все равно не повезло.
Я попытался написать тот же контроллер, используя Rails 3.2 (на Ruby 1.9.3), и у меня не было проблем с токеном аутентификации. Я обыскал вокруг, и я увидел, что были некоторые изменения с токенами аутентификации в Rails 4. Из того, что я понимаю, они больше не будут автоматически вставлены в формы больше? Я предполагаю, что это каким-то образом влияет на типы содержимого, отличного от HTML.
Есть ли способ обойти это без необходимости запрашивать HTML-форму, выхватывать токен аутентификации, а затем делать другой запрос с этим токеном? Или я полностью упускаю то, что совершенно очевидно?
Изменить: Я просто попытался создать новую запись в новом Rails 4 приложении, используя эшафот, ничего не меняя, и я столкнулся с той же проблемой, поэтому я думаю, что это не то, что я сделал.