Cursor-Sheerid-Bypass

拦截指定 Fetch 请求并修改URL中的 country=XXX 为 CN

// ==UserScript==
// @name         Cursor-Sheerid-Bypass
// @namespace    http://tampermonkey.net/
// @version      1.3
// @description  拦截指定 Fetch 请求并修改URL中的 country=XXX 为 CN
// @author       ZAMBAR
// @match        https://services.sheerid.com/*
// @grant        none
// @license      MIT
// ==/UserScript==


(function () {
    'use strict';

    const originalFetch = window.fetch;

    const modifyCountryParam = (url) => {
        if (typeof url !== 'string') return url;
        const urlObj = new URL(url, location.origin);
        if (urlObj.searchParams.has('country')) {
            urlObj.searchParams.set('country', 'CN');
            return urlObj.toString();
        }
        return url;
    };

    window.fetch = function (input, init) {
        if (typeof input === 'string' && input.includes("orgsearch.sheerid.net/rest/organization/search")) {
            console.log("Got input:", input);
            input = modifyCountryParam(input);
            console.log("Modified to:", input);
        } else if (input instanceof Request) {
            const url = input.url;
            if (url.includes("orgsearch.sheerid.net/rest/organization/search")) {
                console.log("Got fetch:", url);
                const newUrl = modifyCountryParam(url);
                console.log("Modified to:", newUrl);

                // Clone
                const newRequest = new Request(newUrl, {
                    method: input.method,
                    headers: input.headers,
                    body: input.body,
                    mode: input.mode,
                    credentials: input.credentials,
                    cache: input.cache,
                    redirect: input.redirect,
                    referrer: input.referrer,
                    integrity: input.integrity,
                    keepalive: input.keepalive,
                    signal: input.signal
                });
                return originalFetch.call(this, newRequest, init);
            }
        }
        return originalFetch.call(this, input, init);
    };
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址