Tag: csrf

如何将CSRF字段添加到使用jquery生成的表单中。(Laravel 5)

Laravel要求你写这样的表格。 {{ csrf_field() }} 我已经在我的网站上用jquery创建了大约15个表单,代码如下。 $(“#formholder).append(“”); 我的问题是: 如何在使用jquery创建的这些表单上添加csrf字段?

将csrf标记传递给blueimp fileupload

我正在使用AngularJS构建SPA(单页应用程序),而对于FileUpload,我正在尝试使用Blueimp文件上载。 服务器端在NodeJS中,使用csrf,因此所有请求都将使用csrf令牌(由AngularJS设置的X-XSRF-TOKEN)发送到服务器。 现在,当我尝试使用Blueimp上传文件时,它失败了 “错误:无效的csrf令牌” 因为它在请求中附加必要的令牌,现在我想知道如何设置令牌。 请注意,我已经在使用AngularJS,并且我没有将任何元标记设置为csrf,但该标记在cookie中可用。 谢谢!!

我的jquery AJAX POST请求无需发送真实性令牌(Rails)

rails中是否有任何规定允许来自站点的所有AJAX POST请求在没有authenticity_token的情况下通过? 我有一个调用控制器方法的Jquery POST ajax调用,但我没有在其中放入任何真实性代码,但调用成功。 我的ApplicationController确实有’request_forgery_protection’,我已经改变了 config.action_controller.consider_all_requests_local 在我的环境/ development.rb中为false 我还搜索了我的代码以确保我没有超载ajaxSend以发送真实性令牌。 是否有一些机制在禁用检查? 现在我不确定我的CSRF保护是否有效。 我正在使用Rails 2.3.5。 更新清晰度: function voteup(url, groupid){ $.ajax({ type: “POST”, url: “/groups/” + groupid + “/submissions/voteup”, data: “url=” + url, dataType: ‘text’, success: function(data){ var counter = “vote_” + url; $(‘#vote_’ + url.cleanify()).text(” ” + data + ” “); } }); }; 我有一个链接,然后有一个调用上述函数的’href: …

Ajax CSRF 403禁止codeigniter

您好我正在调用控制器在我的基于codeigniter的应用程序中使用AJF获取部分,该应用程序具有CSRF启用 我的ajax代码 $(‘#classes’).change(function(){ $classes=$(this).val(); $.ajax({ type:”POST”, data:{ ‘security->get_csrf_token_name(); ?>’ : ‘security->get_csrf_hash(); ?>’, ‘class’:$classes }, url:”index.php/admin/getsection/”+$classes, success:function(return_data) { //alert(return_data); $(‘#section’).html(”); $(‘#section’).html(return_data); $(‘#section’).val(section); } }); 当我第一次调用ajax函数时,它会运行完美。 但是当我再次运行相同的function时,它将返回403禁止的错误。 请告诉我的工作

将csrf令牌存储在元标记中是一种好习惯吗?

如果我在不使用表单的情况下发出POST请求并希望阻止CSRF攻击,我可以做的是在元标记中设置csrf-token,并在触发请求时将其放回标题。 这是一个好习惯吗? 使用JQuery将标记放回头部,例如: $.ajaxSetup({ headers: { ‘X-CSRF-TOKEN’: $(‘meta[name=”csrf-token”]’).attr(‘content’) } });

没有表格的Django CSRF令牌

听起来很奇怪,但是使用Javascript(例如AJAX)发布内容而不使用表单的情况如何(可以从表面读取多个内容)。 我应该在哪里放置csrf_token模板标签? 我已经添加了AJAX修复程序: https : //docs.djangoproject.com/en/dev/ref/contrib/csrf/#ajax …但我得到“CSRFvalidation失败。请求中止。” 404错误。

是否有可能使application / json的跨域POST ajax请求?

我正在测试一些csrf的东西,我想知道是否可以使用Content-Type: application/json POST一个跨域的ajax请求Content-Type: application/json 每次我尝试用jQuery做这个: $.ajax({ type: “post”, url: “http://someotherdomain.com/endpoint”, contentType: “application/json; charset=UTF-8”, data: {“a”: “1”}, dataType: “json”, crossDomain: true, success: function(data){ alert(data); }, failure: function(data){ alert(data); } }); 我总是发送HTTP OPTIONS请求而不是HTTP POST 。 注意 – 我不关心接收数据,我只需要一个单向post。 请注意,内容类型不能是x-www-form-urlencoded ,也不能是GET请求。

带有CSRF的Symfony2表单通过JQuery AJAX传递

我正在开发一个注释框,它将通过JQuery AJAX调用保存注释。 JQuery的 这是JQuery代码(这无缝地工作): $(“.post-comment”).click(function() { var $form = $(this).closest(“form”); if($form) { $.ajax({ type: “POST”, url: Routing.generate(‘discussion_create’), data: $form.serialize(), cache: false, success: function(html){ alert(“Success!”); // Output something } }); } else { alert(“An error occured”); } return false; }); Symfony2控制器 然后,Symfony2控制器方法获取表单数据并对其进行处理。 作为该过程的一部分,它会检查表单是否有效: $entry = new Discussion(); $discussionForm = $this->createForm(new DiscussionType(), $entry); if ($request->getMethod() == ‘POST’) […]

跨域域ajax POST在chrome中

有关跨域AJAX问题的几个主题。 我一直在看这些,结论似乎是这样的: 除了使用像JSONP或代理sollution这样的东西之外,你不应该对另一个域做一个基本的jquery $ .post() 我的测试代码看起来像这样(在“ http://myTestdomain.tld/path/file.html ”上运行) var myData = {datum1 : “datum”, datum2: “datum”} $.post(“http://External-Ip:port”, myData,function(return){alert(return);}); 当我尝试这个(我开始寻找的原因)时,chrome-console告诉我: XMLHttpRequest无法加载http:// External-IP:port / page.php 。 Access-Control-Allow-Origin不允许使用Origin http://myTestdomain.tld 。 现在,据我所知,这是预期的。 我不应该这样做。 问题是POST实际上已经到了低谷。 我有一个简单的脚本运行,将$_POST保存到一个文件,很明显post得到了低谷。 我返回的任何实际数据都没有传递给我的调用脚本,由于访问控制问题,这似乎再次出现。 但是post实际到达服务器的事实让我感到困惑。 我认为上面运行在“myTestdomain”上的代码不能对另一个域(外部IP)执行简单的$.post()是否正确? 是否预期请求实际上会到达external-ip的脚本,即使没有收到输出? 或者这是一个错误。 (我使用的是Chrome 11.0.696.60)

如何在表单的AJAX post请求中传递CSRF令牌?

我正在使用Scala Play! 2.6框架,但这可能不是问题。 我正在使用他们的Javascript路由 – 它似乎工作正常,但它有问题。 我有一个表单,当使用CSRF令牌进行渲染时会生成此表单: Submit! 这是粗略的,我的AJAX: $(document).on(‘submit’, ‘#myForm’, function (event) { event.preventDefault(); var data = { textvalue: $(‘#sometext’).val() } var route = jsRoutes.controllers.DashboardController.postNewProject() $.ajax({ url: route.url, type: route.type, data : JSON.stringify(data), contentType : ‘application/json’, success: function (data) { … }, error: function (data) { … } }) }); 但是当我发布这个时,我从我的服务器获得了一个UNAUTHORIZED响应,我在IntelliJ中的控制台告诉我CSRF检查失败了。 我如何在请求中传递CSRF令牌?