讯飞星火大模型反反调试(F12控制台)

讯飞星火大模型反反调试,解决打开控制台跳转about:blank,解决控制台日志被定时清理。

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         讯飞星火大模型反反调试(F12控制台)
// @namespace    http://tampermonkey.net/
// @version      1.1
// @description  讯飞星火大模型反反调试,解决打开控制台跳转about:blank,解决控制台日志被定时清理。
// @author       XAGU
// @match        *://xinghuo.xfyun.cn/*
// @grant        none
// @run-at       document-start
// @license      MIT
// ==/UserScript==

(function () {
    'use strict';

    // 保存原始的 Reflect.construct
    const originalConstruct = Reflect.construct;

    // 重写 Reflect.construct
    Reflect.construct = function (target, args, newTarget) {
        if (target.prototype.onDevToolOpen != undefined) {
            console.log('拦截检测创建:', target, args, newTarget);
            if (args.length == 1) {
                //设置为不启用
                args[0].enabled = false;
            }
        }
        // 调用原始的 Reflect.construct
        return originalConstruct.apply(this, arguments);
    };

    //定时检测
    const originalSetInterval = window.setInterval;

    window.setInterval = function (callback, delay, ...args) {
        if (callback.toString().includes('ondevtoolclose')) {
            console.log('拦截检测创建:', callback, delay, ...args);
            return;
        }
        return originalSetInterval.call(window, callback, delay, ...args);
    };

})();