Тестирование запросов СМЭВ 3 и СМЭВ 4

Импорт WSDL, ручная сборка SOAP-конверта и разбор ответа — в браузере, без десктопного стенда.

Отладка вида сведений обычно упирается не в код, а в мелочи транспорта: не тот namespace, забытый SOAPAction, не та версия SOAP, подпись не в том узле. Ниже — что из этого закрывается в расширении, а что принципиально нужно делать вне него.

Что закрывается в браузере

Полезная часть работы с видом сведений — это обычные SOAP-запросы, и их удобно держать коллекцией:

  • Импорт WSDL: операции и структура сообщений подтягиваются из описания сервиса.
  • Ручная правка SOAP-конверта: это важно, потому что реальные регламенты почти всегда требуют «немного не то», что сгенерирует инструмент автоматически.
  • Заголовки транспорта: Content-Type, SOAPAction для SOAP 1.1 и параметр action в типе содержимого для SOAP 1.2.
  • Окружения под разные контуры: тестовый и продуктивный адреса, идентификаторы участника и прочие параметры — переменными, а не правкой тела запроса.
  • Коллекция операций вида сведений: отправка, получение ответа, подтверждение — как последовательность запросов, а не как разовые вставки в текстовый редактор.
  • Разбор ответа: SOAP Fault читается как структура, а не как простыня XML в одну строку.

Чего расширение не делает

Сразу и прямо, чтобы это не выяснилось на сдаче интеграции:

  • Не формирует электронную подпись. Ни подпись органа власти, ни подпись сообщения по регламенту СМЭВ. Подписывать нужно вне браузера — вашим средством подписи или адаптером.
  • Не собирает MTOM-вложения. Передача больших файлов во вложениях выходит за рамки клиента.
  • Не заменяет адаптер. Очереди, повторы, подтверждения и состояние обмена — задача серверной части.
  • Не ходит в закрытый контур за вас. Доступ к тестовому и продуктивному контуру обеспечивается сетью рабочего места, как и для любого другого клиента.
  • Практический сценарий: подпись формируется вашим средством или адаптером, готовый подписанный конверт отправляется и отлаживается здесь.
  • Второй сценарий: отладка структуры и транспорта на тестовом контуре до того, как подключается подпись.
  • Третий: разбор присланной коллегами или ведомством выгрузки запроса — вставкой конверта и воспроизведением вызова.

Частые причины отказа на транспортном уровне

СимптомЧто обычно не такГде смотреть
SOAP Fault про неизвестную операцию Не передан SOAPAction (SOAP 1.1) или параметр action в Content-Type (SOAP 1.2) Заголовки запроса
Ошибка валидации схемы Неверный namespace конверта или тела, либо версия схемы вида сведений Объявления xmlns в конверте
HTTP 415 Для SOAP 1.2 нужен тип application/soap+xml, а не text/xml Content-Type
HTTP 200 с пустым телом Асинхронный обмен: ответ придёт отдельным вызовом, а не в этом ответе Логика вида сведений, не клиент
Отказ по подписи Подпись отсутствует, не в том узле или не того формата Средство подписи, вне расширения
Соединение не устанавливается Рабочее место не имеет доступа в нужный контур Сеть и маршрутизация рабочего места

Список про транспорт. Содержательные отказы по регламенту вида сведений разбираются по его документации.

Как начать отладку

1. Импортируйте WSDL

Загрузите описание сервиса — операции и структура сообщений подтянутся. Если WSDL недоступен, соберите запрос вручную и сохраните в коллекцию как шаблон.

2. Опишите контуры окружениями

Отдельное окружение на тестовый и продуктивный контур: адрес, идентификатор участника, версия схемы. В теле запроса используйте подстановки {{var}} вместо жёстких значений.

3. Проверьте транспорт

Отправьте запрос без подписи и убедитесь, что сервис отвечает осмысленно: разбирает конверт, жалуется по делу. На этом этапе ловится большинство ошибок с namespace и SOAPAction.

4. Подключите подпись

Подписанный конверт сформируйте своим средством подписи или адаптером и отправьте уже его. Дальше остаётся содержательная отладка вида сведений.

5. Зафиксируйте результат

Сохраните рабочие запросы в коллекцию, а на платном тарифе — соберите прогон и выгрузите PDF-отчёт: он написан так, чтобы вывод понял нетехнический читатель, в том числе со стороны заказчика.

Частые вопросы

Можно подписать запрос прямо в расширении?

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

Подходит ли для СМЭВ 4?

Да, в той же логике: отправка и отладка SOAP-запросов, импорт WSDL, окружения под контуры. Специфика версии живёт в регламенте вида сведений, а не в клиенте.

Останутся ли тела запросов и токены на моей машине?

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

Есть ли готовые коллекции видов сведений?

Готовых коллекций ведомственных видов сведений мы не распространяем. На странице примеров есть образцы форматов, включая WSDL, — на них удобно проверить механику импорта.

Нужен ли платный тариф?

Отправка SOAP-запросов, коллекции, окружения и импорт WSDL доступны на Free без аккаунта. Платные тарифы нужны для QA-сценариев, прогонов и PDF-отчётов.