LINUX.ORG.RU

Javascript - как найти данные по которым рисуется Canvas

 


0

2

Подскажите пожалуйста, вот есть сайт, на сайте есть «canvas» на котором рендерится график.

Данные для графика приходят по websocket И после этого браузер их рендерит в график.

При наведении курсоры мыши к график - на графике всплывается подсказка с данными для точки - на графике на которую наведена мышь. Эти данные временно встраиваются в DOM и их можно перехватить через Mutationobserver. После убирания мыши с графика - эти данные из DOM исчезают.

Но, как можно найти, где хранится сами данные - по которым строился график ?? Или где где хранится сами данные - по которым всплывает подсказка и по которым эти данные временно встраиваются в DOM ?

Данные хранятся в памяти. Нужно знать имена переменных, через которые можно будет получить к этим данным доступ. Кроме того, в доступе к данным могут помешать области видимости этих переменных.

Каков вопрос, таков и ответ.

deep-purple ★★★★★
()

Нужно произвести реверс-инжиниринг фронтэнд-части данного сайта.

vbr ★★★★
()

Но, как можно найти, где хранится сами данные - по которым строился график ??

«Данные для графика приходят по websocke» ищи то что читает вебсокет и куда передаёт.

Или где где хранится сами данные - по которым всплывает подсказка и по которым эти данные временно встраиваются в DOM ?

грепай скрипты сайта по слову «canvas»

F12 в браузере нажимай и удачи!

LINUX-ORG-RU ★★★★★
()

Данные для графика приходят по websocket

Но, как можно найти, где хранится сами данные - по которым строился график ?

Показал бы сайт, с чего ты взял, что там websocket?

CryNet ★★★★★
()
Последнее исправление: CryNet (всего исправлений: 1)

Эти данные временно встраиваются в DOM и их можно перехватить через Mutationobserver.

Ставишь бряк. Разматываешь стек из этой точки до момента когда вынимаются данные. Повторять пока результат тебя не устроит.

ya-betmen ★★★★★
()
Ответ на: комментарий от ya-betmen

[quote]Ставишь бряк. Разматываешь стек из этой точки до момента когда вынимаются данные. Повторять пока результат тебя не устроит.[/quote]

Пробовал, там в этом javascript кода разобраться - сам «черт ногу сломит».

Andy_kun
() автор топика
Ответ на: комментарий от ddidwyll

То, что приходит по websocket`у я перехватить могу - тут нет проблемы. Это, как запасной вариант, просто он менее удобный.

Мне интересно было, как именно средствами javascript можно получить эти данные, я думал, что может они, где в доме могут хранится или как то еще.

Andy_kun
() автор топика

можно предположить, что сами данные графика не хранятся, а подгружаются по событию mouseover в стек обработчика, откуда создаются обьекты графика в DOM

zudwa
()
Ответ на: комментарий от Andy_kun

На всякий случай глянь localStorage, sessionStorage, indexedDB, cacheStorage, может оно где-нибудь там кэшируется.

ddidwyll ★★★★
()
Ответ на: комментарий от Andy_kun

Сцайт покажи? По разному может быть. Может они где-то лежат в глобальной области видимости, а мы гадаем на гуще.

crutch_master ★★★★★
()
Ответ на: комментарий от Andy_kun

если график статичный, то могут и с сервера.

zudwa
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.