отладка протоколов JSON по TCP

Оказывается посмотреть , лог обмена по TCP (например формата json) можно через программу Winshark и это довольно просто.

Открываем Winshark . Отфильтровываем по номеру порта , например 50010 : tcp.port == 50010 .
Далее начинаем обмен с кассовым аппаратом Меркурий например (50010 - это его порт обмена в драйвере INECRMAN).

И в программе Winshark есть очень полезная кнопка АНАЛИЗ / СЛЕДОВАТЬ / ПОТОК TCP IP или CTRL+Alt+Shift+T. В результате мы увидим примерно такоу картину:



POST /api.json HTTP/1.1
Host: 192.168.1.2:50010
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/json; charset=utf-8
X-Requested-With: XMLHttpRequest
Content-Length: 27
Origin: http://192.168.1.2:50010
Connection: keep-alive
Referer: http://192.168.1.2:50010/

{"command":"GetDriverInfo"}HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Length: 78
Content-Type: application/json
Date: Tue, 02 Feb 2021 12:11:08 GMT

{"result":0,"driverVer":"1.9.0.580","protocolVer":"3.3","driverBaseVer":"0.2"}

И все тайное , что там кассе посылается и что она отвечает и самое главное почему касса не работает правильно становится явным.