jQuery1.5 以后,Ajax 模块提供了三个新的方法用于管理、扩展 Ajax 请求,分别是:
前置过滤器 jQuery. ajaxPrefilter 请求分发器 jQuery. ajaxTransport, 类型转换器 ajaxConvert
为什么会出现这几个新的概念?因为 ajax 在发送的过程还有很多一系列的处理。
具体看看代码:
jQuery.extend({ //前置过滤器 ajaxPrefilter: addToPrefiltersOrTransports(prefilters), //请求分发器 ajaxTransport: addToPrefiltersOrTransports(transports), });
其实说白了就是把对应的方法制作成函数的形式填充到 prefilters 或者 transports对应的处理包装对象中,用的时候直接执行,每个函数都保持着各自的引用,种写法的好处自然是灵活,易维护,减少代码量。
所以此时的 prefilters 中的结构可以是这样。
prefilters = { '*': function() { return { send: function() { }, callback: function() { } } } }
前置过滤器和请求分发器在执行时,分别遍历内部变量 prefilters 和 transports,这两个变量在 jQuery 加载完毕后立即初始化,从过闭包的方法填充这个 2 个对象。
请验证,完成请求
由于请求次数过多,请先验证,完成再次请求
打开微信扫码自动绑定
绑定后可得到
使用 Ctrl+D 可将课程添加到书签
举报