Отправить токен CSRF в React SPA от Rails - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть Rails API, и я использую devise для аутентификации.Моя клиентская часть - React SPA.

Я пытался включить protect_from_forgery в моем application_controller как:

class ApplicationController < ActionController::Base
  protect_from_forgery with: :null_session
  before_filter :configure_permitted_parameters, if: :devise_controller?

  protected

  def configure_permitted_parameters
    devise_parameter_sanitizer.permit(:sign_up, keys: [:name])
    devise_parameter_sanitizer.permit(:sign_in, keys: [:otp_attempt])
  end

end

Но при каждом запросе put/post выдается ошибка:

Can't verify CSRF token authenticity

Это имеет смысл, потому что я не отправляю обратно CSRF token с моими запросами.Кажется, что способ сделать это для рельсов - это добавить <%= csrf_meta_tag %> в мой application.html.erb, но я использую jbuilder для преобразования всего в json перед отправкой в ​​мой SPA.

Есть лиКак я могу получить доступ к этой информации на стороне клиента, чтобы я мог включить защиту для CSRF?

...