Как захватить фактические данные, которые передаются между веб-сервером и WebService

Я написал код PHP, который позволяет мне общаться с REST API.

Мой вызов PHP выдает cURL позвоните, чтобы связаться со службой API. Однако я сталкиваюсь со странной проблемой, когда данные, получаемые API, не совпадают с данными, отправляемыми с помощью cURL.

Я хотел бы настроить некоторый тип посредника, чтобы гарантировать, что запрос, который я посылаю от Apache, — это те же данные, которые получает API.

Информация, которую мне интересно видеть

  1. Заголовок запроса / получения
  2. Запрос / Полученное тело

Я думаю о том, чтобы разрушить Wireshark на сервере Apache, чтобы перехватывать пакеты, которые идут от моего Apache к API, а также все, что поступает от API к Apache.

После установки Wireshark на сервер Apache «машина с Windows 7» я вижу много данных.

Как я могу сказать Wireshark только для сбора данных из Apache в API и только из API в Apache?

Спасибо за помощь.

0

Решение

Существует множество инструментов для тестирования API, начиная с очень простых в использовании плагинов для браузера и заканчивая такими сложными, как Apache Jmeter. Идея состоит в том, чтобы сделать вызовы от вашего тестирующего программного обеспечения к API и проанализировать запрос и ответ. Если вы работаете в Windows, вы можете использовать что-то вроде Fiddler для перехвата пакетов, которые выходят с вашего компьютера. Если у вас есть доступ к клиентскому серверу, я предполагаю, что для различных ОС существуют инструменты для перехвата исходящих пакетов и их анализа, но вам придется поискать их в Google.

0

Другие решения

чтобы отфильтровать результаты HTTP в Wireshark, просто введите http в поле фильтра и нажмите Применять

чтобы лучше выглядело, просто запустите захват до HTTP-запроса и остановите его после

впоследствии, если вы знаете IP-адрес сервера API, вы можете отфильтровать еще один шаг:
http && ip.dst == X.X.X.X

0

По вопросам рекламы [email protected]