繁体   English   中英

发送Ajax请求之前的事件(向请求中添加一些数据)

[英]Event before sending Ajax Request (to add some data to the request)

我在应用程序中添加了CSRF令牌。 普通表单工作正常,但现在我也必须调整所有ajax请求。

在不同地方有很多ajax请求,这就是为什么我正在寻找一种简单的方法来解决此问题。

是否存在某种事件,该事件在发送ajax请求之前已触发,所以我可以将CSRF令牌添加到请求中?

.ajaxSend()

您可以为此使用ajaxSend,它允许您在执行ajax请求之前更改URL。

$( document ).ajaxSend(function( event, jqxhr, settings ) {
  if ( settings.url == "ajax/test.html" ) {
    $( ".log" ).text( "Triggered ajaxSend handler." );
  }
});

除了注释中列出的文章中提到的方法外,还有AJAX请求发送之前调用的beforeSend(..)函数。
有关更多详细信息,请参见文档

您可以为不同的AJAX事件绑定事件监听器, 请参见此处

 $(document).bind("ajaxSend", function(){
   $("#loading").show();
 }).bind("ajaxComplete", function(){
   $("#loading").hide();
 });

同样,您可以将方法绑定为

$(document).bind("ajaxSend", function(){
  // code to add CSRF token
 })

这些事件在文档上触发,并且是GLOBAL EVENT

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM