Pergunta

Vocês sabem como eu posso usar a linha de comando curl para POST SOAP para testar um serviço web?

Eu tenho um arquivo (soap.xml), que tem toda a mensagem soap ligado a ele Eu só não parece ser capaz de postar-lo corretamente.

Obrigado!

Foi útil?

Solução

Publicação de uma string:

curl -d "String to post" "http://www.example.com/target"

postar o conteúdo de um arquivo:

curl -d @soap.xml "http://www.example.com/target"

Outras dicas

Para uma SOAP 1.2 Webservice, eu uso normalmente

curl --header "content-type: application/soap+xml" --data @filetopost.xml http://domain/path

errada. Isso não funciona para mim.

Para me este funciona:

curl 
-H 'SOAPACTION: "urn:samsung.com:service:MainTVAgent2:1#CheckPIN"'   
-X POST 
-H 'Content-type: text/xml'   
-d @/tmp/pinrequest.xml 
192.168.1.5:52235/MainTVServer2/control/MainTVAgent2
curl -H "Content-Type: text/xml; charset=utf-8" \
-H "SOAPAction:" \
-d @soap.txt -X POST http://someurl

Se você quiser uma interface mais macio do que o terminal, http://hurl.it/ é incrível.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top