remoteを使用するときにセキュリティ上の問題があるでしょうか。RailsアプリケーションのAJAX実装には本当ですか?
私は「Ruby on Railsを学んでいる学生です。セキュリティの理由から、Railsで「remote:true」機能を使うことに反対する人(私たちの先生)がいる理由を知りました。
回答:
回答№1は1フォームの送信を保護するために、Railsのフォームヘルパーはクロスサイトリクエストフォージェリ(CSRF)を自動生成します。これはフォーム送信時にサーバーによって検証されます。
通常のAjax
開発者が追加することが多い skip_before_action :verify_authenticity_token
ajaxリクエストを確実にするために彼らのコントローラーでコントローラがそれについて不平を言うことなく通過しますが、これは良い習慣ではありません。これを回避する1つの方法は、Ajaxデータの一部としてフォームヘルパーによって生成されたCSRFトークンを渡すことです。
レール remote: true
これが解決する課題です。 remote: true
。 CSRFトークンをサーバーに渡すので安全です。