|
Отправить soap запрос из командной строки
|
|||
---|---|---|---|
#18+
Доброго дня. Столкнулся с такой проблемой. Есть сервер, на котором запущены soap-сервисы. Данные сервисы нормально работают как через soapUI, так и из java приложений, но вот из Win приложения с использованием WinHttpRequest при попытке отправки запроса возвращается сама wsdl, а запрос не производится. Решил отправить запрос вручную из под линукс системы на которой и подняты эти soap-сервисы. Пробовал двумя командами: wget и curl в обоих случаях такая же проблема, запрос не уходит, а в ответ получаю саму wsdl вот команды которые запускал: curl --header "Content-Type: text/xml;charset=UTF-8" --header "SOAPAction: http://uir.ms.ru/SOAP.AttachmentService.getAttachment" -d req2.xml http://server_ip/wsdl/HsTServiceSK?wsdl -O -S -o response2.xml wget http://server_ip/wsdl/HsTServiceSK?wsdl -U "myAgent" -F --post-file=req2.xml --header="Content-Type: text/xml" -S -d -O response.xml лог дебага: Setting --output-document (outputdocument) to response.xml DEBUG output created by Wget 1.12 on linux-gnu. --2018-03-12 17:15:34-- http://server_ip/wsdl/HsTServiceSK?wsdl Устанавливается соединение с server_ip:80... соединение установлено. Created socket 4. Releasing 0x0000000000aefda0 (new refcount 0). Deleting unused 0x0000000000aefda0. ---request begin--- POST /wsdl/HsTServiceSK?wsdl HTTP/1.0 User-Agent: myAgent Accept: */* Host: server_ip Connection: Keep-Alive Content-Type: text/xml Content-Length: 503 ---request end--- [writing POST file req2.xml ... done] Запрос HTTP послан, ожидается ответ... ---response begin--- HTTP/1.1 200 OK Server: nginx/1.8.1 Date: Mon, 12 Mar 2018 05:15:34 GMT Content-Type: text/xml;charset=UTF-8 Connection: close Set-Cookie: JSESSIONID=AF2A4D905A6A176487C211BF385551CF; Path=/ ---response end--- HTTP/1.1 200 OK Server: nginx/1.8.1 Date: Mon, 12 Mar 2018 05:15:34 GMT Content-Type: text/xml;charset=UTF-8 Connection: close Set-Cookie: JSESSIONID=AF2A4D905A6A176487C211BF385551CF; Path=/ Stored cookie server_ip -1 (ANY) / <session> <insecure> [expiry none] JSESSIONID AF2A4D905A6A176487C211BF385551CF Длина: нет информации [text/xml] Saving to: «response.xml» Использовал уже различные параметры, результат один и тот же: скачивается сама wsdl и запрос не уходит. Подскажите как быть? Почему не отправляется запрос, что еще проверить? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2018, 08:44 |
|
Отправить soap запрос из командной строки
|
|||
---|---|---|---|
#18+
Параметр ("?wsdl") не пробовали убрать? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2018, 11:25 |
|
Отправить soap запрос из командной строки
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, пробовал. Как только уже не пробовал. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2018, 01:59 |
|
Отправить soap запрос из командной строки
|
|||
---|---|---|---|
#18+
А потрассировать запросы, отправляемые корректно работающим приложением, Вы не пробовали? Ну там tcpdump-ом или wireshark-ом. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2018, 10:44 |
|
Отправить soap запрос из командной строки
|
|||
---|---|---|---|
#18+
Всем спасибо, за участие. Разобрался. В WSDL есть параметр soap:address location он указывает на место фактического нахождения сервиса (слушателя) и это место может не совпадать с адресом нахождения wsdl, именно по этому просто убирая из моего примера ?wsdl мне все-равно скачивалась wsdl заменил url на тот, что указан в soap:address location и все заработало ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2018, 02:57 |
|
|
start [/forum/topic.php?fid=25&msg=39613285&tid=1481375]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 168ms |
0 / 0 |