|
протокол SOAP | ☑ | ||
|---|---|---|---|---|
|
0
e2v
23.10.18
✎
08:26
|
Столкнулся с такой пакостью, не понимаю где копать.
РезультатСоединения = Соединение.ОтправитьДляОбработки(Запрос) Запрос - это HTTPЗапрос с xml данными. Отрабатывает нормально, ответ приходит 200. Но ... xml данные не правильные. Думал формирую данные с ошибкой. Нет, оказалось, что при отсылки формируется пакет SAOP с ошибкой. <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope> <SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelo не дописывает "pe>" в конце. Не понимаю. Че это? |
|||
|
1
VS-1976
23.10.18
✎
08:41
|
(0) Баг или фича?
|
|||
|
2
e2v
23.10.18
✎
08:43
|
Нашел.
ЗаголовокHTTP.Вставить("Content-Length", XMLСтрока(СтрДлина(XMLпакет))); Вот эта су.... неправильно считает длину строки. Тогда вопрос повторяется. Че это? |
|||
|
3
VS-1976
23.10.18
✎
08:47
|
(2) Ставь filder и экспериментируй как хочешь
|
|||
|
4
palsergeich
23.10.18
✎
08:49
|
Content-lenght на сколько я помню этот заголовок сам вставляется в момент отправки, если не был установлен ранее. Скорее всего в момент xmlстрока происходит удаление каких то символов и из-за этого стр длина считает некорректно. Уберите функцию xmlстрокк в заголовке
Но я не помню проблем именно с этим заголовком. Обычно проблемы из-за отсутствия content-type |
|||
|
5
palsergeich
23.10.18
✎
08:52
|
Ой да xml строка снаружи а не внутри.
Так же было замечено что не все спец символы стр длина корректно считает. Попробуйте без этого заголовка. |
|||
|
6
Cyberhawk
23.10.18
✎
08:59
|
Вставлять Content-Length самостоятельно посчитанный - это не от большого ума
|
|||
|
7
e2v
23.10.18
✎
09:15
|
(2)Таки fidler-ом и нашел
|
|||
|
8
e2v
23.10.18
✎
09:17
|
Да. без формирования заголовка Content-Length считает правильно.
Спасибо, наставили на путь истинный. Хотел строго по написанному формировать 8))). |
|||
|
9
palsergeich
23.10.18
✎
09:20
|
(8) ставь content-type, не забывай, многие парсеры без него не работают
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |