По факту на самом деле у ЦБ РФ не явный протокол SOAP. Т.е. у них по сути SOAP вложен в HTTP. Например адрес их веб-сервера с веб-сервисами такой:
http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx
Сам HTTP запрос (заголовок) выглядит следующим образом:
- Код: Выделить всё
- POST /DailyInfoWebServ/DailyInfo.asmx HTTP/1.1
 Host: www.cbr.ru
 Content-Type: application/xml; charset=utf-8
 Content-Length: 357
Именно формирование такого заголовка я реализовал через код.
Далее по правилам HTTP идет пустая строка и тело по сути уже этого запроса (так как ЦБ РФ использует POST метод). В теле как раз указывается сам пакет (конверт) SOAP сообщения:
- Код: Выделить всё
- <?xml version="1.0" encoding="utf-8"?>
 <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 <soap:Body>
 <GetCursOnDateXML xmlns="http://web.cbr.ru/">
 <On_date>2022-03-21</On_date>
 </GetCursOnDateXML>
 </soap:Body>
 </soap:Envelope>
Проблема в том, что я в принципе когда отправляю запрос, ловлю ошибку 403. Т.е. я просто не могу достучаться до сервиса ЦБ РФ.
Сам ответ от ЦБ РФ приходит в таком ключе:
- Код: Выделить всё
- <body>
 <h1>Forbidden - 403</h1>
 <h1> Blocked by PT Application Firewall.</h1>
 <pre>Request ID: 2022-03-21-19-32-30-619939362FB6B74B</pre>
 </body>
И честно говоря, куда уж проще еще написать не понимаю пока что. Т.е. если бы у меня хотя бы получился коннект, то тогда вопросов не было. А тут даже без тела получаю отлуп от сервера...
Добавлено спустя 10 минут 44 секунды:
И это кстати я за 3 три дня перекопал туеву тучу информации как по Lazarus, так и по HTTP протоколу. Там все просто. Вот только впечатление такое, что в сокет летит некорректная информация, которая как раз и не воспринимается веб-сервером и веб-сервисом ЦБ РФ.
Добавлено спустя 18 минут 27 секунд:
Либо нужно точное описание/понимание методов POST, которых у данного класса в Lazarus довольно таки много...




 Заработало. Но чтобы окончательно понять, что происходит, пришлось через трассировку смотреть конечный пакет, который уходил. И просто увидел, что там сборка происходит заголовка на автомате и многие предохранительные вещи, с моей стороны излишние. Короче потер лишний код, который "помогал" с моей точки зрения формировать заголовок, заполнил более корректно все переменные связанные со сборкой заголовка пакета и все заработало. Проблема с Synapse ушла.
 Заработало. Но чтобы окончательно понять, что происходит, пришлось через трассировку смотреть конечный пакет, который уходил. И просто увидел, что там сборка происходит заголовка на автомате и многие предохранительные вещи, с моей стороны излишние. Короче потер лишний код, который "помогал" с моей точки зрения формировать заголовок, заполнил более корректно все переменные связанные со сборкой заголовка пакета и все заработало. Проблема с Synapse ушла.