0

Rails 3.2.8 を使用しています。アプリケーションからレコードにアクセスして何らかの処理を行い、変更されたレコードの形式で結果を返したいと考えています。コントローラーへのjsonリクエストを通じてこれを行っています。正常に動作していますが、更新を投稿すると CSRF 警告が表示されます (もちろん)。元のリクエストからセッション Cookie を保存し、投稿時に使用することで、これらを削除することを考えました。(これは、優れたセキュリティ プラクティスのようにも思えます)。

問題は、セッション Cookie が送信されていないことです。HTTParty と RestClient の gem を使ってみました。ブラウザーで (Firefox 用の RESTClient プラグインを使用して) 要求を行うと、Cookie が送信されます。Cookie はブラウザーに送信される必要があるため、これは予期される動作であると思います。

Cookie をスクリプトに送信する方法はありますか?

そうするのは正しいですか?そうでない場合、どのようにこれにアプローチする必要がありますか?

4

1 に答える 1

3

Authenticity_tokenがパラメーターに含まれているかどうかを確認してください。私は過去にこのような同様の問題に直面していました。

Authenticity_token がパラメーターで渡されない場合は、フォーム form_authenticity_token ヘルパーに追加します。

また

コントローラーで

skip_before_filter :verify_authenticity_token

これはあなたを助けるかもしれないと思います。

于 2013-01-11T13:13:41.490 に答える