10

Rails アプリに反応コンポーネントがあり、localhost でホストされている Rails アプリにPOSTfetch()を送信するために使用しようとしていますが、次のエラーが表示されます。

ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):

私はdevise gemを使って と を処理user/registrationsしてloginsいます。

私は削除しようとしましたprotect_from_forgery with: :exception

これが私のフェッチのコードです。

this.state.ids.sub_id});
  fetch(POST_PATH, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    body: body  
  }).then(res => res.json()).then(console.log);

csrfトークンを取得してフォームから送信し、通過させるにはどうすればよいですか?
理想的には、ヘッダーを介して送信したいのですが、トークンにアクセスする方法がわかりません。

4

3 に答える 3

0

Rails 5.2を使用しているときに私も同じ問題に直面し、追加することでこの問題を修正できました

protect_from_forgery with: :null_sessionapplication_controller.rb では、ここからこれを取得しました。これを参照してください

于 2019-05-06T19:23:59.950 に答える