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请求就算没有参数, 也可以发挥作用,不一定是需要参数的。
浙公网安备 33010602011771号