IchthyanderПосмотрел. Как я понял вы подключались с помощью JSON? Для меня пока этот момент не очень. Я сейчас бьюсь с подключением по SOAP посредством SYNAPCE (использую класс
THTTPSEND).
Собственно пока пост был на модерации, я немного продвинулся дальше, но не сильно. Собственно за несколько дней ковыряния созрели следующие вопросы:
1) Не получается прочитать ответ, который приходит в
Document с помощью метода
Read. Т.е. как бы я не пытался куда либо прочитать поток данных, обращение потом к этому буферу вызывает ошибку доступа к памяти. В итоге получилось обращаться к буферу напрямую через свойство
Memory. Почему через Read не получается прочитать? Можете показать правильную конструкцию написания?
2) Формирую запрос с телом согласно правилам, которые указаны на сайте ЦБ РФ в разделе технического описания. Т.е. заголовок и тело корректные (во всяком случае то, что я вижу визуально). Однако при получении пакета, в ответ приходит ошибка 415. Сам же ответ выглядит таким образом:
The server cannot service the request because the media type is unsupported. Собственно не могу понять, что не так...
Пример моего запроса:
- Код: Выделить всё
POST /DailyInfoWebServ/DailyInfo.asmx HTTP/1.1
Host: www.cbr.ru
Content-Type: text/xml; charset=utf-8
Content-Length: 364
SOAPAction: "http://web.cbr.ru/GetCursOnDateXML"
<?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>17.03.2022 21:48:13</On_date>
</GetCursOnDateXML>
</soap:Body>
</soap:Envelope>
Единственная разница в том, что у меня отсутствует табуляция. Все остальное один в один как на сайте ЦБ РФ в разделе примера по данной веб-функции.
3) Не совсем понятно, какие значения реально надо указывать в таких свойствах, как:
TargetHost,
Protokol если в методе
HTTPMethod явно указывается протокол и адрес, по которому нужно законнектиться Т.е. каким образом одно связано с другим? В итоге я первые два свойства в принципе не заполняю, так как я не вижу как они влияют на заголовок моего запроса, когда я их указываю.
4) Как вообще увидеть реальный текст запроса, который уходит по адресу? Возможно то, что я костылями отображаю, совсем не совпадает с тем, что реально уходит...
5) Есть какие то другие компоненты, которые позволили бы в принципе общаться с ЦБ РФ по SOAP протоколу (меня интересуют веб-функции, которые работают с форматом XML).
Можете помочь? Или кто-то может помочь разобраться в этом?