v7: Чтение XML POST - запросы #794018


#0 by DeMi4
Есть вот такой запрос. GetTask = "<soapenv:Envelope xmlns:soapenv=""; xmlns:ser=""; Который отправляется на сервер вот таким образом В ответе приходит XML, далее я пытаюсь обработать используя          После чего 1С просто падает. Ответ прилетает большой, проблемы нет когда ответ не слишком большой.
#1 by Злопчинский
попробуй охрани ответ как файл и уже потом файл курочь ??
#2 by Serginio1
Проще использовать Вэб сервис напрямую Здесь есть примеры Кроме того можно использовать Xdocument
#3 by DeMi4
нашел место где происходит затык и полное зависание при выполнении ВыражениеXPath = ДОМ.SelectNodes("//*[local-name = 'payload']"); причем с какими то ответами прилетающими с сервака все гуд а с какими то нет. Сохранял все в файлы разницы не обнаружил. Может кто сталкивался?
#4 by DrShad
С чем сталкивался? Одному богу известно что тебе приходит и почему валится на простой выборке
#5 by DrShad
Сохрани ответ в файл и открой каким-то вьюером, увидишь ошибку
#6 by DeMi4
В том то и дело что файлы открываются нормальные, без каких либо нареканий,все нормально отображаются
#7 by trad
Не используй ResponseText. Смотри в сторону ResponseXML.
#8 by MWWRuza
Проблема известная. Если файлы больше 570КБ, используйте альтернативные методы. Например:
#9 by MWWRuza
Код не мой, но я активно использую в своих разработках. Смысл в том, что мелкие файлы, размером менее 570Кб, получаю напрямую, а если больше - то через утилиту curl. Все работает нормально. И для отправки аналогично.
#10 by Адинэснег
нафига внешние компоненты? средствами языка нельзя?
#11 by Адинэснег
а все, вижу, клюшки
#12 by DeMi4
спасибо буду пробовать
#13 by DeMi4
А что за переменные такие скрипт и стрим?
#14 by trad
вместо этого: - и не нужно никаких промежуточных строк, файлов и прочих обкладок
#15 by MWWRuza
#16 by DeMi4
Ну собственно в продлжение темы. Замучал меня этот ХМЛ. Решил опробовать и опкатать XMLHTTP = СоздатьОбъект("Msxml2.ServerXMLHTTP"); Запросы идут все прилетает. но возникла проблема с попыткой отпарсить         ХМЛЛУзелДОМ - это IXMLDOMElement Искомые мною ноды все есть но почему то я их не могу получить.
#17 by trad
"Искомые мною ноды все есть но почему то я их не могу получить. " какая конкретно строка кода не работает
#18 by totparen
Парси через XmlLiteReader Работающий код:
#19 by DeMi4
SelectNodes("//*[local-name = 'Task']/*[local-name = 'BasicClaimData']/*[local-name = 'Vehicle']/*[local-name = 'VehicleIdentification']");
#20 by trad
если xpath не работает, то вероятно выражение неверно написано тут надо смотреть сам xml и то что хочешь выбрать
#21 by DeMi4
когда делаю сзВложенныеXML.ДобавитьЗначение(Узел.text); а потом засовываю в объект дом то все гуд, значит там все есть. Но если Узел.text получается очень большим то 1с валится(, вот я пробую передавать объекты которые содержат этот текст, но либо сам что то не так делаю либо вообще это не возможно.
#22 by trad
хм. в общем случае: Узел1 = Узел и Узел2 = дом.load(Узел.text) - не одно и тоже, хотя бы из-за используемых NS Не исключено, что из-за этого разное поведение.
#23 by DeMi4
а URL? я понимаю что ссылка, но на что?
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С