我需要截取某页面一开始加载中的一个网络请求中的数据,run-at也设置的document-start,实际运行中,大多数时间网页在我脚本运行之前,导致无法获取网络请求中的数据。以前是可以正常获取的,但是近几期油猴更新后就不能正常用了,求助😭😭😭
overrideOpen()是几乎放在代码最前列的。
function overrideOpen() { var open = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function (method, url) { var self = this; // 添加事件监听器,监听 XMLHttpRequest 的响应阶段 this.addEventListener('load', function () { if (self.readyState === 4 && self.status === 200) { var data = self.responseText; var isPracticeData = data.includes('testPaperTopics'); if (isPracticeData) { practiceData = practiceData || []; if (!Array.isArray(practiceData)) { practiceData = []; } practiceData.push(JSON.parse(data)); handlePracticeData(practiceData); } } }); // 调用原始的 open 方法 open.apply(this, arguments); }; }