Перейти к содержимому

Отладка веба

Следить за живыми обновлениями во вкладке WebSockets

Читать сообщения, которыми обмениваются веб-страница и сервер, и найти то, после которого сломался экран.

Зачем: чаты, живые цены и статусы заказов приходят через WebSocket, а не обычными запросами, поэтому в списке Network их не видно. Эта вкладка их показывает — вместе с тем самым сообщением, после которого появился баг.

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

Подробнее: WebSockets, WebView DevTools.