jquery ajaxsetup beforeSend

jqury 提供了ajaxsetup 可以作为全部的声明周期回调函数支持, 具体的api我也说不上来,只能去查询。
下午的时候我想要做postajax提交的时候,想要在所有post提交的时候加入一个csrf参数。

在查阅资料我写了如下代码

在server端, 我做如下处理

Route::post('test', function(){
var_dump(file_get_contents('php://input'));
dd($_REQUEST);
});


然后我在console里面输入了$.ajax({type:'post', url:'/test', data:{test:1}}); 输入回车以后, 在页面的response中我找到了响应值。

这样让很满意。

当我输入$.ajax({type:'post', url:'/test'}); 回车之后, 

我表述一下:

在ajax()函数中如果你没有传入data对象的话, 那么在beforeSend的xhr参数中也不会有data对象, 即使你对data对象创建了值的话, 在server中也不会在request参数中找到这个值, 只是会在php://input中找到这个值。

在ajax()函数中如果你传入data对象的话,那么在beforeSend的xhr参数会有data对象, 这时你对data对象的修改会传递到server的$_REQUEST这个变量上。
目前我还不知道原因。

PS:post请求就算没有参数, 也可以发挥作用,不一定是需要参数的。

posted @ 2015-11-27 19:52  祥子爱游戏  阅读(2248)  评论(0)    收藏  举报