Отладка веба
Следить за живыми обновлениями во вкладке WebSockets
Читать сообщения, которыми обмениваются веб-страница и сервер, и найти то, после которого сломался экран.
Зачем: чаты, живые цены и статусы заказов приходят через WebSocket, а не обычными запросами, поэтому в списке Network их не видно. Эта вкладка их показывает — вместе с тем самым сообщением, после которого появился баг.
Что происходит
Заголовок раздела «Что происходит»- Откройте вкладку WebSockets. WebSocket — это соединение, которое остаётся открытым, чтобы сервер мог присылать обновления в любой момент.
- Каждая строка — одно сообщение: стрелка вверх — его отправило приложение, стрелка вниз — оно пришло с сервера; рядом длина и время.
- Нажмите на сообщение, например на обновление цены, чтобы прочитать его целиком.
- Ищите сообщение прямо перед поломкой: здесь заказ не прошёл с
out_of_stock, а приложение ничего не сказало пользователю.
Полезно знать
Заголовок раздела «Полезно знать»- Вкладка работает и без открытого DevTools.
- Holtdroid хранит трафик сокетов с момента запуска приложения, поэтому вкладка покажет всё, даже если перезагрузить страницу портала или открыть сессию на другом компьютере.
- Clear очищает список только в вашем браузере. Hide under 15 B прячет пинги и другие крошечные сообщения. Пауза останавливает список; после продолжения дописывается то, что пришло за это время.
- Event streams (ещё один способ, которым сервер присылает обновления) тоже видны здесь.
- Пока сессия записывается, нажмите на время сообщения, чтобы поставить в этот момент маркер на записи.
Если не работает
Заголовок раздела «Если не работает»- Список пустой: страница ещё не открыла сокет. Откройте ту часть приложения, где есть живые данные.
- Сокет помечен как видео, и сообщений нет: видеопотоки специально не показываются, иначе они завалили бы список.
Подробнее: WebSockets, WebView DevTools.