ajaxhook.min.js
是一个用于拦截和修改 AJAX 请求的 JavaScript 库。
它可以在不修改原始代码的情况下,对 AJAX 请求进行全局的拦截和处理。
github地址:https://github.com/wendux/Ajax-hook
1. 首先,在(油猴)脚本中引入 ajaxhook.min.js
库文件:
// @require https://unpkg.com/ajax-hook@3.0.3/dist/ajaxhook.min.js
2. 接下来,你可以使用 ah 对象的 proxy 方法来拦截 AJAX 请求:
ah.proxy({
//请求发起前进入
onRequest: (config, handler) => {
if(config.method == 'POST'){
console.warn(config,config.url)
}
else{
console.log(config,config.url)
}
// config.url="https://www.baidu.com"
handler.next(config);
},
//请求发生错误时进入,比如超时;注意,不包括http状态码错误,如404仍然会认为请求成功
onError: (err, handler) => {
console.log(err.type)
handler.next(err)
},
//请求成功后进入
onResponse: (response, handler) => {
console.log(response.response)
handler.next(response)
}
})
通过proxy 方法,你可以在请求发送前、请求成功后、请求失败后等不同的阶段对请求进行拦截和处理。
更多资料可看文档:
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END