Нужно переназначить встроенный класс вэбсокета.
Пример рабочего кода, который следует применить к странице перед открытием вэбсокета, приложил ниже.
Если вэбсокет открывается на странице сразу, вам понадобится расширение типа Tampermonkey для внедрения скрипта как можно раньше.
window.WebSocketCopy = window.WebSocket;
window.WebSocket = function(a,b,c) { // Притворяемся WebSocket
// В a,b,c - аргументы, которые обычно передаются в экземпляр класса
// Пример: a = "ws://35.26.64.245";
// Создаём реальный экземпляр
const socketInstance = new WebSocketCopy(a,b,c);
// Дальше делаем всё что нам нужно с инстанцией вэбсокета
socketInstance.addEventListener('message', function (event) {
console.log(event);
});
// И возвращаем обработанный результат
return socketInstance;
}
Где-то слышал, что переназначение встроенных классов может повлиять на производительность кода, поэтому применять такой трюк советую только для отладки.