Tag: csrf

Rails 3.1 – CSRF被忽略了吗?

在这里我的问题, 我有一个rails 3.1应用程序,我正在尝试发出ajax请求但是我收到警告消息“警告:无法validationCSRF令牌真实性”… 在我的布局中,我有辅助方法“csrf_method_tag” ,我添加了以下javascript代码(不知道是否真的需要): $.ajaxSetup({ beforeSend: function(xhr) { xhr.setRequestHeader(‘X-CSRF-Token’, $(‘meta[name=”csrf-token”]’).attr(‘content’)); } }); 我的Gemfile包含gem jquery-rails (> = 1.0.12),我在application.js的顶部需要jquery和jquery-ujs。 即使这样,该消息仍然出现。 我忘了什么吗? 谢谢你的帮助。

jQuery:为Django设置CSRF令牌无法正常工作

我的jQuery函数看起来像 $(function() { // activate “New” buttons if input is not empty $(‘form input[type=”text”]’).live(‘keyup’, function() { var val = $.trim(this.value); $(this).next(“button”).prop(‘disabled’, val.length === 0); }); $(“body”).on(“submit”,”form”,function(e){ // do not submit the form e.preventDefault(); // handle everything yourself var $form = $(this); var title = $form.closest(‘.video-detail’).find(‘.title’).text(); var entryTitle = $form.find(‘.input-small’).val(); console.debug(title); console.debug(entryTitle); $.ajaxSetup({ beforeSend: function(xhr, settings) […]

iframe导致无法validationCSRF令牌真实性n Rails

我有一个使用phonegap 2.3.0 for Windows Phone 8 SDK通过iframe加载的webapp。 通过iframe加载它的问题是,当我发送$.post()请求时,它导致Can’t verify CSRF token authencity在Rails端Can’t verify CSRF token authencity 。 我尝试了几种方法,例如覆盖$.post()以使用$.ajax()来使用令牌的setHeaderRequest ,以及$.ajaxSetup() 当我禁用protect_from_forgery或verify_authenticity_token ,应用程序会正确加载。 我认为问题的原因是因为webapp位于另一个域(跨域问题),而csrf只是试图阻止点击劫持。 有办法绕过这个问题吗? 以下是我发布的示例: $.post(url, {app: {played: tiles}, no: no}, function (response) { linkTo(‘#app_button’, response[‘next’]); }); 例: $.ajaxSetup({ beforeSend: function(xhr) { xhr.setRequestHeader(‘X-CSRF-Token’, $(‘meta[name=”csrf-token”]’).prop(‘content’)); } }); 编辑:我已经能够将真实性令牌作为参数传递到我的发布请求中,并出现相同的错误。 我开始相信错误不是由令牌引起的。 错误发生的其他原因是什么? 日志: [2539 – 2013/03/06 15:37:42] (INFO) Parameters: […]

我是否需要jQuery .ajax()的CSRF令牌?

所以我有一个PHP文件的基本.ajax()POST方法。 我需要哪些安全措施? 一些post提到使用您通过AJAX发送并在PHP文件中validation的隐藏MD5输入字段。 这是一个足够好的方法吗?

Laravel 4 CSRF表单通过Ajax调用提交

我是Stackoverflow和Laravel 4的新手,我试图通过jquery ajax提交表单。 我serializeArray()表单并使用json提交它。 在laravel中,在检查提交的csrf令牌的路径中,转到我的控制器进行过程输入。 当_token输入与serializeArray()一样在数组中时,csrf检查不起作用。 我必须得到_token值并提交作为单独的ajax数据。 我想知道是否有办法告诉csrffilter哪里运行检查输入数组的hte字段_token并使用它? 这是我的代码: routes.php文件 Route::post(‘searchAjax’, array(‘before’ => ‘csrf’, ‘uses’ => ‘SearchController@searchAjax’)); 这是我不想读取数组forms[0] [‘_ token],但我不知道如何告诉它这样做。 index.js var form = $(‘#search’).serializeArray(); var token = $(‘#search > input[name=”_token”]’).val(); $.ajax({ type: ‘post’, url: ‘searchAjax’, dataType: ‘json’, data: { _token: token, form: form }, success: function(data) { for(var key in data) { //alert(key) } […]