使用curl提交SOAP请求

最近的项目,需要研究一下libcurl提交XML请求,顺便也用curl测试了一下SOAP请求。以下给出三种案例,方便以后查询。

 

1. curl提交无需认证的SOAP请求

 

这个案例使用webxml.com.cn的中国股票Web Service服务,SOAP消息和执行命令如下:

 

sh600000

 

curl -v -H "Content-Type: text/xml;charset=UTF-8" -H "SOAPAction: \"http://WebXml.com.cn/getStockInfoByCode\"" -d @stock_request http://webservice.webxml.com.cn/WebServices/ChinaStockWebService.asmx

 

截图如下:

 

 

 

2. curl提交需要基本认证(Basic Authentication)的SOAP请求

 

这个案例使用公司的一个应用,以免泄密,屏蔽了End point等信息,SOAP消息和执行命令如下:

 

hello

 

curl -v -H "Content-Type: text/xml;charset=UTF-8" -H "Authorization: Basic VkYt5EstbVNN5T0odlR42EMZaDlBMyE=" -k -d @basic_auth_request https://aaa.xxx.com/Services/yyy

 

截图如下:

 

 

 

3. curl提交需要用户名令牌认证(UsernameToken Authentication)的SOAP请求

 

同样也屏蔽了End point、密码等信息,SOAP消息和执行命令如下:

 

username password X11BrdgMh/Outv2Tii83og== 2011-01-26T09:37:26.953Z 0000

 

curl -v -k -d @usernametoken_auth_request https://aaa.sp.xxx.com/aaa/4.0/services/yyy

 

截图如下:

 

 

其中,加入-v参数是为了显示HTTP头信息,至于何时需要-H参数添加相应的HTTP头信息,可以参考soapUI-3.6.1的执行结果。

你可能感兴趣的:(Mediation,soap,authentication,authorization,basic,security,header)