使用 Tampermonkey Hook 修改 Axios 请求返回数据
要使用 Tampermonkey Hook 来修改通过 axios 请求回来的数据,你可以按照以下步骤进行操作:
- 首先,安装 Tampermonkey 扩展程序到你的浏览器中。Tampermonkey 是一个用户脚本管理器,它允许你自定义网页的行为。
- 在 Tampermonkey 中创建一个新的脚本。你可以点击 Tampermonkey 的图标,然后选择'创建新脚本'。
- 在脚本编辑器中,你可以编写 JavaScript 代码来修改通过 axios 请求回来的数据。以下是一个示例代码:
// ==UserScript==
// @name Modify Axios Response Data
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Modify the response data from axios requests
// @match https://example.com/* // 修改为你想要拦截的 URL
// @grant none
// ==/UserScript==
(function() {
'use strict';
// 通过 hook 重写 axios 的 get 方法
const originalGet = axios.get;
axios.get = function(url, config) {
return originalGet(url, config)
.then(response => {
// 修改 response.data 中的数据
response.data = modifyData(response.data);
return response;
})
.catch(error => {
return Promise.reject(error);
});
};
// 自定义修改数据的函数
function modifyData(data) {
// 在这里可以修改数据的逻辑
// 例如,将所有的 name 字段修改为大写
data.forEach(item => {
item.name = item.name.toUpperCase();
});
return data;
}
})();
- 在代码中,你需要将
https://example.com/*替换为你想要拦截的 URL。这可以是一个具体的 URL,也可以是一个通配符,例如https://example.com/api/*。 - 保存脚本,并确保 Tampermonkey 扩展程序处于开启状态。
- 当你访问匹配的 URL 并发送 axios 请求时,Tampermonkey 会拦截请求,并使用你的自定义逻辑修改返回的数据。
请注意,Tampermonkey Hook 只能修改通过 axios 请求回来的数据,它无法修改其他方式获取的数据。此外,使用 Tampermonkey Hook 修改数据可能会影响网站的正常功能,请谨慎使用。
原文地址: https://www.cveoy.top/t/topic/lUeI 著作权归作者所有。请勿转载和采集!