Вебсокет парсинг

Поддержка
  • Хочу вытянуть всю переписку сокета с сервером. Но столкнулся с проблемой, что export ALL отсутствует в DevTool (или заблокирован SOP).
    Вообщем тыкался я тыкался, успехом не увенчалось. Прочие фидлеры проблему не решили, скопировать всю переписку и там нельзя. Но по одному запросу можно kekW.

    Как я могу достать всю переписку сокета с сервером со страницы?

  • @Kinokio said in Вебсокет парсинг:

    Как я могу достать всю переписку сокета с сервером со страницы?

    https://www.wireshark.org/?

  • @sergerdn на python решение сделал, жуть конечно этот ваш SOP

    1. Ставите хром
    2. Док слайд переставляете на отдельное окно
    3. Включаете сокет и тащите Copy all HAR
    4. Парсите полученный JSON как хотите
      profit
  • @Kinokio Можно было просто пропатчить браузерный WebSocket и сохранять все сообщения куда душе угодно )

  • @Kinokio said in Вебсокет парсинг:

    Хочу вытянуть всю переписку сокета с сервером. Но столкнулся с проблемой, что export ALL отсутствует в DevTool (или заблокирован SOP).
    Вообщем тыкался я тыкался, успехом не увенчалось. Прочие фидлеры проблему не решили, скопировать всю переписку и там нельзя. Но по одному запросу можно kekW.

    Как я могу достать всю переписку сокета с сервером со страницы?

    Используйте действие "Выполнять при каждой загрузке страницы в браузере" с кодом:

    if (!window.toster) window.toster = [];
    const OriginalWebSocket = WebSocket;
    
    const CustomWebSocket = function (url, protocols) {
        const socket = new OriginalWebSocket(url, protocols);
        socket.send = function (data) {
            window.toster.push({
                message: "outgoing",
                data: data
            });
            OriginalWebSocket.prototype.send.call(socket, data);
        };
        socket.addEventListener('message', function (event) {
            window.toster.push({
                message: "incoming",
                data: event.data
            });
        });
        return socket;
    };
    
    window.WebSocket = CustomWebSocket;
    

    2326b2f7-d82d-4673-86e0-7255350a03f8-изображение.png