【问题标题】:Send a session token via AJAX通过 AJAX 发送会话令牌
【发布时间】:2015-11-10 18:47:42
【问题描述】:

有没有办法通过Java Script 从客户端获取rails 会话cookie,然后通过AJAX 请求发送它以证明身份?

我正在尝试通过JavascriptJQuery 对rails 模型进行编辑。我担心恶意用户向 rails 应用程序发送发布请求并编辑模型,因此我想检查存储在 rails 会话中的current_user。是否可以通过AJAX 发送此会话并在 Rails 端使用它?

【问题讨论】:

  • Cookies 应该已经在 AJAX 请求中发送,除非 AJAX 请求调用不同的域?
  • @Stryner 看起来你是对的!谢谢。您要发布答案吗?
  • 不是真的,因为我只是用谷歌搜索并反刍我在stackoverflow.com/questions/2870371/… 找到的内容。我会觉得很脏。

标签: jquery ruby-on-rails ruby-on-rails-4


【解决方案1】:

您可以获取 CRFS 令牌并将其作为标头:

jQuery

var token = $( 'meta[name="csrf-token"]' ).attr( 'content' );

$.ajaxSetup( {
  beforeSend: function ( xhr ) {
    xhr.setRequestHeader( 'X-CSRF-Token', token );
  }
}); 

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    看来Rails 确实为您处理了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-16
      • 1970-01-01
      • 1970-01-01
      • 2016-04-07
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多