您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Меняет Referer для XHR и логирует изменения в консоль
// ==UserScript== // @name MDSADSASDADSA // @namespace http://tampermonkey.net/ // @version 1.2 // @description Меняет Referer для XHR и логирует изменения в консоль // @author Ты // @match https://secure.chase.com/* // @grant none // ==/UserScript== (function() { 'use strict'; const origOpen = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url) { this._method = method; this._url = url; return origOpen.apply(this, arguments); }; const origSend = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function(body) { const targetRegex = /\/svc\/wr\/oao\/public\/application\/capture\/ccb\/originations\/capture-inquiry\/app-status-api\/v2\/applications\/([^/]+)\/applicants\/([^/]+)\/status/; if (this._url && targetRegex.test(this._url)) { const [, applicationId, applicantId] = this._url.match(targetRegex); const newReferer = `https://secure.chase.com/web/oao/application/retail?cfgCode=010390A&applicationNumber=${applicationId}&applicantIdentifier=${applicantId}`; const origSetRequestHeader = this.setRequestHeader; this.setRequestHeader = function(header, value) { if (header.toLowerCase() === 'referer') { // Skip original referer return; } return origSetRequestHeader.call(this, header, value); }; // Установка кастомного Referer и логирование const sendRef = () => { origSetRequestHeader.call(this, 'Referer', newReferer); console.log(`✅ [Tampermonkey] Referer изменён для XHR:\n→ Новый Referer: ${newReferer}\n→ Метод: ${this._method}\n→ URL: ${this._url}`); }; // Задержка — чтобы не конфликтовать с setRequestHeader от скриптов сайта setTimeout(sendRef, 0); } return origSend.apply(this, arguments); }; })();