Коллеги, помогите. Делаю GET запрос, получаю тело как строку вида:
По идее это xml, закодированный в base64Binary. Как его достать? Всю голову уже сломал.
Если получить тело как двичные данные и попробовать опеределить тип данных XML
, то выдает следующее:
URIПространстваИмен: "http://www.w3.org/2001/XMLSchema"
ИмяТипа: "base64Binary"
И что делать дальше?
<ba se64Binary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8cmVzcG9uc2U+DQogIDxyZXN1bHQ+MDwvcmVzdWx0Pg0KICA8ZGVzY3JpcHRpb24+b2s8L2Rlc2NyaXB0aW9uPg0KICA8dHJhbnNhY3Rpb25zPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4wPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MTwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkE3NkI4NDUzREJDNzY8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjEwMDAwPC9hbW91bnQ+DQogICAgICA8cGFydG5lcl9pZD5QQTc2ODQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+RDwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4xPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MjwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkE3NkI5MzQzREJDMzE8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjExMDAwMDwvYW1vdW50Pg0KICAgICAgPHBhcnRuZXJfaWQ+VEI0ODM2MDwvcGFydG5lcl9pZD4NCiAgICAgIDx0eXBlPkQ8L3R5cGU+DQogICAgPC90cmFuc2FjdGlvbj4NCiAgICA8dHJhbnNhY3Rpb24+DQogICAgICA8aWQ+MjwvaWQ+DQogICAgICA8cGVyc29uX2lkPjE8L3BlcnNvbl9pZD4NCiAgICAgIDxjYXJkX2lkPkZBNzZCODQ1M0RCQzc2PC9jYXJkX2lkPg0KICAgICAgPGFtb3VudD4xMDAwPC9hbW91bnQ+DQogICAgICA8cGFydG5lcl9pZD5QQTc2ODQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+QzwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4zPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MzwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkM0NzhERUJGNjQzNTY8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjEyMzQ2MjE8L2Ftb3VudD4NCiAgICAgIDxwYXJ0bmVyX2lkPjIyMDQxMDQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+RDwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICA8L3RyYW5zYWN0aW9ucz4NCjwvcmVzcG9uc2U+</base64Binary>
По идее это xml, закодированный в base64Binary. Как его достать? Всю голову уже сломал.
Если получить тело как двичные данные и попробовать опеределить тип данных XML
XMLТипЗнч(ОтветHTTP.ПолучитьТелоКакДвоичныеДанные())
URIПространстваИмен: "http://www.w3.org/2001/XMLSchema"
ИмяТипа: "base64Binary"
И что делать дальше?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Здравствуйте.
Не подскажите в итоге как вы из двоичных данныx получили xml ?
На входе имею некие "ДвоичныеДанные" для которых метод
СериализаторXDTO.XMLТипЗнч(ДвоичныеДанные)
Возвращает как у вас Пространство XML-схема, тип base64Binary
Что вы дальше делали с этими двоичными данными чтобы выдрать из них xml ? А то тоже никак не могу найти решения, либо запутал сам себя...
Здравствуйте.
Не подскажите в итоге как вы из двоичных данныx получили xml ?
На входе имею некие "ДвоичныеДанные" для которых метод
СериализаторXDTO.XMLТипЗнч(ДвоичныеДанные)
Возвращает как у вас Пространство XML-схема, тип base64Binary
Что вы дальше делали с этими двоичными данными чтобы выдрать из них xml ? А то тоже никак не могу найти решения, либо запутал сам себя...
Это бросайте програмировать) Это XML Который содержит файлик в котором XML )))
<?xml version="1.0"?>
<response>
<result>0</result>
<description>ok</description>
<transactions>
<transaction>
<id>0</id>
<person_id>1</person_id>
<card_id>FA76B8453DBC76</card_id>
<amount>10000</amount>
<partner_id>PA76845</partner_id>
<type>D</type>
</transaction>
<transaction>
<id>1</id>
<person_id>2</person_id>
<card_id>FA76B9343DBC31</card_id>
<amount>110000</amount>
<partner_id>TB48360</partner_id>
<type>D</type>
</transaction>
<transaction>
<id>2</id>
<person_id>1</person_id>
<card_id>FA76B8453DBC76</card_id>
<amount>1000</amount>
<partner_id>PA76845</partner_id>
<type>C</type>
</transaction>
<transaction>
<id>3</id>
<person_id>3</person_id>
<card_id>FC478DEBF64356</card_id>
<amount>1234621</amount>
<partner_id>22041045</partner_id>
<type>D</type>
</transaction>
</transactions>
</response>
Вот ваш файлик :D
<?xml version="1.0"?>
<response>
<result>0</result>
<description>ok</description>
<transactions>
<transaction>
<id>0</id>
<person_id>1</person_id>
<card_id>FA76B8453DBC76</card_id>
<amount>10000</amount>
<partner_id>PA76845</partner_id>
<type>D</type>
</transaction>
<transaction>
<id>1</id>
<person_id>2</person_id>
<card_id>FA76B9343DBC31</card_id>
<amount>110000</amount>
<partner_id>TB48360</partner_id>
<type>D</type>
</transaction>
<transaction>
<id>2</id>
<person_id>1</person_id>
<card_id>FA76B8453DBC76</card_id>
<amount>1000</amount>
<partner_id>PA76845</partner_id>
<type>C</type>
</transaction>
<transaction>
<id>3</id>
<person_id>3</person_id>
<card_id>FC478DEBF64356</card_id>
<amount>1234621</amount>
<partner_id>22041045</partner_id>
<type>D</type>
</transaction>
</transactions>
</response>
Вот ваш файлик :D
Ололоша прав вам надо не всю строку а только
PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8cmVzcG9uc2U+DQogIDxyZXN1bHQ+MDwvcmVzdWx0Pg0KICA8ZGVzY3JpcHRpb24+b2s8L2Rlc2NyaXB0aW9uPg0KICA8dHJhbnNhY3Rpb25zPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4wPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MTwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkE3NkI4NDUzREJDNzY8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjEwMDAwPC9hbW91bnQ+DQogICAgICA8cGFydG5lcl9pZD5QQTc2ODQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+RDwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4xPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MjwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkE3NkI5MzQzREJDMzE8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjExMDAwMDwvYW1vdW50Pg0KICAgICAgPHBhcnRuZXJfaWQ+VEI0ODM2MDwvcGFydG5lcl9pZD4NCiAgICAgIDx0eXBlPkQ8L3R5cGU+DQogICAgPC90cmFuc2FjdGlvbj4NCiAgICA8dHJhbnNhY3Rpb24+DQogICAgICA8aWQ+MjwvaWQ+DQogICAgICA8cGVyc29uX2lkPjE8L3BlcnNvbl9pZD4NCiAgICAgIDxjYXJkX2lkPkZBNzZCODQ1M0RCQzc2PC9jYXJkX2lkPg0KICAgICAgPGFtb3VudD4xMDAwPC9hbW91bnQ+DQogICAgICA8cGFydG5lcl9pZD5QQTc2ODQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+QzwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICAgIDx0cmFuc2FjdGlvbj4NCiAgICAgIDxpZD4zPC9pZD4NCiAgICAgIDxwZXJzb25faWQ+MzwvcGVyc29uX2lkPg0KICAgICAgPGNhcmRfaWQ+RkM0NzhERUJGNjQzNTY8L2NhcmRfaWQ+DQogICAgICA8YW1vdW50PjEyMzQ2MjE8L2Ftb3VudD4NCiAgICAgIDxwYXJ0bmVyX2lkPjIyMDQxMDQ1PC9wYXJ0bmVyX2lkPg0KICAgICAgPHR5cGU+RDwvdHlwZT4NCiAgICA8L3RyYW5zYWN0aW9uPg0KICA8L3RyYW5zYWN0aW9ucz4NCjwvcmVzcG9uc2U+
Вот эту часть)
PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8cmVzcG9uc2U+DQogIDxyZXN1bHQ+
Вот эту часть)
(7) nSpirit2,
(6) Ололошка,
спасибо за подсказку, этот момент я как-то упустил.
Но все равно: получил я эту строку, а как из неё данные то достать? Как Ололошка из строки "PD94bWwgdmVyc2lvbj0iMS4w...." получил "<?xml version="1.0"?>
<response>
<result>0</result>
<description>ok</description>..." ? Каким способом?
Можно к это строке применить метод base64Значение, на выходе получаю некие двоичные данные и что дальше?
(6) Ололошка,
спасибо за подсказку, этот момент я как-то упустил.
Но все равно: получил я эту строку, а как из неё данные то достать? Как Ололошка из строки "PD94bWwgdmVyc2lvbj0iMS4w...." получил "<?xml version="1.0"?>
<response>
<result>0</result>
<description>ok</description>..." ? Каким способом?
Можно к это строке применить метод base64Значение, на выходе получаю некие двоичные данные и что дальше?
Привет еще раз. Как Ололоша уже сказал ответ твой являеться тоже XML файлом. Можешь получить из него данные для Base64Значение(). Которая в свою очередь вернет вам двоичные данные. Их имеет смысл сохранить файл содержание которого привел Ололоша и уже файл парсить используя что то вроде ЧтениеXML. Это уж что любите и что вам удобней. Вот и все)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот