|
Заголовок SOAP | ☑ | ||
---|---|---|---|---|
0
AndyR
16.11.12
✎
10:08
|
Доброго времени суток.
Ситуация такая: написал веб-сервис с одним входным строковым параметром, опубликовал его на IIS 7.5. К этому сервису подключается стороннее приложение (например, SoapUI) и высылает SOAP пакет такого вида: <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:nsi="http://testSite.ru/"> <soap:Header> <info> Some important info </info> </soap:Header> <soap:Body> <nsi:receive_str> <nsi:InpParam>Data for input parameter</nsi:InpParam> </nsi:receive_str> </soap:Body> </soap:Envelope> В параметр InpParam веб-сервиса попадает только содержимое тэга <nsi:InpParam>. Два вопроса в связи с этим: 1) soap:Header отрезает 1С или IIS? и 2) можно ли как-нибудь добраться до заголовка пакета из сервиса 1С? |
|||
1
Balonbl4
16.11.12
✎
10:11
|
http://www.wireshark.org/download.html тебе в помощь.
|
|||
2
AndyR
16.11.12
✎
10:29
|
Сниффером я увижу, что прилетело на вход IIS. Нисколько не сомневаюсь, что на входе пакет в целости и сохранности. Это потом его IIS перелопачивает(?) и отдает сервису 1С. Тут уже сниффер не поможет.
|
|||
3
Balonbl4
16.11.12
✎
10:42
|
SoapUI само это запрос сгенерировало? Что в хидере? Вы же пишите что у вас сервис с одним строковым параметром - как раз тем, который передается.
|
|||
4
AndyR
16.11.12
✎
11:25
|
SoapUI генерит запрос с пустым хидером, но никто не мешает туда добавить что-либо руками в тестовых целях.
То приложение, которое шлёт мне данные, в хидер записывает сведения о безопасности, и эти сведения хотелось бы получать. Да, сервис с единственной входной строкой. Почему-то думал, что в нее придет пакет целиком, а не только часть из <body>. |
|||
5
AndyR
19.11.12
✎
10:09
|
ап
|
|||
6
AndyR
20.11.12
✎
12:56
|
снова ап
|
|||
7
Balonbl4
20.11.12
✎
13:05
|
(7) Веб сервис же на вашей стороне, почему бы вам эту нужную информацию из хидера в боди не перенести? Ограничения на клиенте? И кстати,да, вы в веб сервис в любом случае только боди сможете получить - 1ска только его передает на вход функции, которую вызывает веб сервис.
|
|||
8
AndyR
21.11.12
✎
09:08
|
(7) >> Веб сервис же на вашей стороне, почему бы вам эту нужную информацию из хидера в боди не перенести?
А поподробнее? Чем? Где? Тут еще всплывает тема, что и мне надо будет хидеры в пакетах заполнять... Подход, думаю, будет аналогичен. |
|||
9
AndyR
21.11.12
✎
13:50
|
ап
|
|||
10
Balonbl4
21.11.12
✎
13:52
|
Ну вы же веб сервис на 1С пишите - добавьте в него еще один входной строковый параметр и пишите туда,то,что до этого пытались писать в хидер
|
|||
11
AndyR
21.11.12
✎
13:55
|
К сервису обращается стороннее приложение, на формат запроса я влиять не могу. И, соответственно, сторона которая отвечает на мои запросы формат строго определила, снова тупик.
|
|||
12
AndyR
21.11.12
✎
13:57
|
напрашивается какая-то прослойка между 1С и IIS, которая разбирает пакет от 1С и расставляет поля куда надо.
|
|||
13
Balonbl4
21.11.12
✎
13:59
|
(11) Странный у вас клиент, что формат запроса подкорректировать не может. Почему в хидер он может что-то добавить а в боди - нет?
|
|||
14
AndyR
21.11.12
✎
14:21
|
(13) Потому что он не только у меня клиент, он еще 100500 баз опрашивает. Протокол утвержден, ради одного человека никто менять ничего не станет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |