2015-11-11 4 views
0

Я пытаюсь интегрировать свою веб-систему с SOAP API, который имеет очень плохую документацию. Они просто написали строки сборов, но не представили много примеров того, как добиться тех же результатов. Я связался с ними, и они сказали, что я могу использовать cURL для общения с их веб-сервисом.Отправка XML с помощью командной строки cURL и получение ответа

Мне нужно отправить XML, и они отправят XML обратно в ответ. Они обеспечивают этот запрос пример

<?xml version="1.0" encoding="UTF-8"?> 
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> 
<soap-env:Body> 
<m:F2bAcaoCobranca xmlns:m="http://www.f2b.com.br/soap/wsbillingaction.xsd"> 
<mensagem data="2005-04-18" numero="121233"/> 
<cliente conta="90230100" senha="senha123"/> 
<acao_cobranca numero="153079" cancelar_cobranca="" registrar_pagamento="" 
registrar_pagamento_valor="" dt_registrar_pagamento="" cancelar_multa="1" 
permitir_pagamento="1" dt_permitir_pagamento="2005-05-20" reenviar_email="0" 
email_tosend=""/> 
<acao_agendamento numero="123" cancelar_agendamento="0"/> 
</m:F2bAcaoCobranca> 
</soap-env:Body> 
</soap-env:Envelope> 

Я должен посылать запросы на этот URL

https://www.f2b.com.br/WSBillingAction

я не имею никакой дополнительной информации об этом API. Предполагая, что вы являетесь экспертом в cURL, SOAP и XML (потому что я нет!), Каковы наилучшие догадки, чтобы получить ответ с этого сервера?

+0

С Curl вы должны сначала определить, какой тип запроса делает API ожидать. Обычно получайте и отправляйте сообщения. – frz3993

+0

Протестировано, и сервер ответил «ERRO cliente: conta nà £ o encontrada. ' – frz3993

+0

скажет POST. @ frz3993 действительно, это всего лишь пример кода. какую команду вы запустили? –

ответ

0

Поместите запрос в файл «request.xml», а затем использовать

curl --header "content-type: text/soap+xml; charset=utf-8" --data @query.xml -k "https://www.f2b.com.br/WSBillingAction" 
+0

эй, ничего не происходит, ничего не отображается на консоли –

+0

Конечная точка '/ WSBillingAction' кажется действительной, потому что запрос приводит к ошибке, если вы используете например/WSFooAction. Однако служба не показывает WSDL. –

Смежные вопросы