- 浏览: 23967 次
- 性别:
- 来自: 上海
最新评论
-
wpf523:
恩,YES
equals与== -
wangjinfeng:
跑不起来啊?缺很多东西
webservice提供数据访问spring+hibernate -
opleo:
就这样完了?
axis2学习(1)安装axis2 -
kaipingk:
wxq594808632 写道引用夜里会有寂寞,也会有空虚,可 ...
如此生活你想要吗? -
yuyanshan:
工作就快一年了,一年中收获不少.加油...三五年后就是 ...
如此生活你想要吗?
今天说说wsdl也就是web 服务描述语言,简单的说就是xml
以中国股票网提供的webservice为例,说明一下,这个服务是有流量或访问限制的一天访问次数不能太多。(为什么要这样啊,不过毕竟免费的,给提供就不错啦)
主要是学习wsdl和soap,soap说的不多,不过改天再来个soap的,要不今天看到太多了,一大堆E文晕死,希望对大家有帮助
下面是它自己的一些简介和说明;完了我在说说wsdl
讲解地址:http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx
地址:http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx?WSDL
先放xml
红色的俺的一些注解说明,大概看看就是了,要搞股票系统应该多看看里面的opreation和type我用过一个opreation还不错实时获取股票信息
<?xml version="1.0" encoding="utf-8" ?> xml头定义版本和字符集- <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://WebXml.com.cn/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://WebXml.com.cn/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> wsdl定义它所需要的一些协议,命名空间,服务名什么的
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> <strong>中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票)</strong>,数据即时更新。输出GIF分时走势图、日/周/月 K 线图、及时行情数据(股票名称、行情时间、最新价、昨收盘、今开盘、涨跌额、最低、最高、涨跌幅、成交量、成交额、竞买价、竞卖价、委比、买一 - 买五、卖一 - 卖五)。此中国股票行情数据 WEB 服务仅作为用户获取信息之目的,并不构成投资建议。<a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> 和/或其各供应商不为本页面提供信息的错误、残缺、延迟或因依靠此信息所采取的任何行动负责。<strong>市场有风险,投资需谨慎</strong>。<br />此中国股票行情数据Web Services请不要用于任何商业目的,若有需要请<a href="http://www.webxml.com.cn/zh_cn/contact_us.aspx" target="_blank">联系我们</a>,欢迎技术交流。 QQ:8698053<br /><strong>使用本站 WEB 服务请注明或链接本站:http://www.webxml.com.cn/ 感谢大家的支持</strong>!<br /><br /><span style="color:#D20000;"><strong>股票输入注意事项</strong>:因上海股票和深圳股票在代号上有重叠,所以在输入上海股票请在代号前加 SH,深圳加 SZ(不区分大小写),例:上证指数 sh000001,深发展A sz000001。如不输入股票代号默认上证指数 sh000001</span><br /><br /> </wsdl:documentation> 这些是对文档的一些说明
- <wsdl:types> 类型定义或说明
- <s:schema elementFormDefault="qualified" targetNamespace="http://WebXml.com.cn/"> 下面是一些参数说明包括请求响应大家都看得懂不罗嗦啦
- <s:element name="getStockImageByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImageByCodeResponse">
<s:complexType />
</s:element>
- <s:element name="getStockImageByteByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImageByteByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockImageByteByCodeResult" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="theType" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByCodeResponse">
<s:complexType />
</s:element>
- <s:element name="getStockImage_kByteByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="theType" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByteByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockImage_kByteByCodeResult" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockInfoByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockInfoByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockInfoByCodeResult" type="tns:ArrayOfString" />
</s:sequence>
</s:complexType>
</s:element>
- <s:complexType name="ArrayOfString">
- <s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="base64Binary" nillable="true" type="s:base64Binary" />
<s:element name="ArrayOfString" nillable="true" type="tns:ArrayOfString" />
</s:schema>
</wsdl:types>
下面是消息定义,因为wsdl采用消息机制,请求和响应这会都成消息啦。当然这些会被封装成soap传输 下面的什么什么in是请求消息,out是响应消息(这是站在服务器端看,客户端反过来就是)。
- <wsdl:message name="getStockImageByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImageByCode" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImageByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImageByteByCode" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImageByteByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImage_kByCode" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImage_kByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImage_kByteByCode" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImage_kByteByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockInfoByCode" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockInfoByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImageByCodeHttpGetOut" />
- <wsdl:message name="getStockImageByteByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImage_kByCodeHttpGetOut" />
- <wsdl:message name="getStockImage_kByteByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:ArrayOfString" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImageByCodeHttpPostOut" />
- <wsdl:message name="getStockImageByteByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImage_kByCodeHttpPostOut" />
- <wsdl:message name="getStockImage_kByteByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:ArrayOfString" />
</wsdl:message>
下面对我们来说才是有用的啊看好了
porttype子元素也就是operation对应到具体实现就是我们类中的方法,当然理解为对外接口更好点,最起码听起来专业点。这里引用了命名空间看起来很累不过组织结构良好,input和output对应上面的message中定义的。中间还夹杂了一大堆说明,方法说明嘛不过看到人累啊
- <wsdl:portType name="ChinaStockWebServiceSoap">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeSoapIn" />
<wsdl:output message="tns:getStockImageByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeSoapIn" />
<wsdl:output message="tns:getStockImageByteByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeSoapIn" />
<wsdl:output message="tns:getStockImage_kByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeSoapIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeSoapIn" />
<wsdl:output message="tns:getStockInfoByCodeSoapOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="ChinaStockWebServiceHttpGet">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImageByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImageByteByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImage_kByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeHttpGetIn" />
<wsdl:output message="tns:getStockInfoByCodeHttpGetOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="ChinaStockWebServiceHttpPost">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImageByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImageByteByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImage_kByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeHttpPostIn" />
<wsdl:output message="tns:getStockInfoByCodeHttpPostOut" />
</wsdl:operation>
</wsdl:portType>
马上就完了,坚持一会
下面是数据绑定(soap绑定),soapAction相当于我们的mvc中的c做流程控制的,要不服务器上它找谁去啊。style是定义文档样式 soapbody use指定使用那种类型传递soap文中说文本型 soap12是xml的标签这里也说明采用soap1.2协议版本
- <wsdl:binding name="ChinaStockWebServiceSoap" type="tns:ChinaStockWebServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getStockImageByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImageByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImageByteByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImage_kByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImage_kByteByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockInfoByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceSoap12" type="tns:ChinaStockWebServiceSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getStockImageByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImageByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImageByteByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImage_kByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImage_kByteByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockInfoByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceHttpGet" type="tns:ChinaStockWebServiceHttpGet">
<http:binding verb="GET" />
- <wsdl:operation name="getStockImageByCode">
<http:operation location="/getStockImageByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<http:operation location="/getStockImageByteByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<http:operation location="/getStockImage_kByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<http:operation location="/getStockImage_kByteByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<http:operation location="/getStockInfoByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceHttpPost" type="tns:ChinaStockWebServiceHttpPost">
<http:binding verb="POST" />
- <wsdl:operation name="getStockImageByCode">
<http:operation location="/getStockImageByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<http:operation location="/getStockImageByteByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<http:operation location="/getStockImage_kByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<http:operation location="/getStockImage_kByteByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<http:operation location="/getStockInfoByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
最后一节是webservice的名称和一些数据地址绑定uri好像更确切些
- <wsdl:service name="ChinaStockWebService">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> <strong>中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票)</strong>,数据即时更新。输出GIF分时走势图、日/周/月 K 线图、及时行情数据(股票名称、行情时间、最新价、昨收盘、今开盘、涨跌额、最低、最高、涨跌幅、成交量、成交额、竞买价、竞卖价、委比、买一 - 买五、卖一 - 卖五)。此中国股票行情数据 WEB 服务仅作为用户获取信息之目的,并不构成投资建议。<a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> 和/或其各供应商不为本页面提供信息的错误、残缺、延迟或因依靠此信息所采取的任何行动负责。<strong>市场有风险,投资需谨慎</strong>。<br />此中国股票行情数据Web Services请不要用于任何商业目的,若有需要请<a href="http://www.webxml.com.cn/zh_cn/contact_us.aspx" target="_blank">联系我们</a>,欢迎技术交流。 QQ:8698053<br /><strong>使用本站 WEB 服务请注明或链接本站:http://www.webxml.com.cn/ 感谢大家的支持</strong>!<br /><br /><span style="color:#D20000;"><strong>股票输入注意事项</strong>:因上海股票和深圳股票在代号上有重叠,所以在输入上海股票请在代号前加 SH,深圳加 SZ(不区分大小写),例:上证指数 sh000001,深发展A sz000001。如不输入股票代号默认上证指数 sh000001</span><br /><br /> </wsdl:documentation>
- <wsdl:port name="ChinaStockWebServiceSoap" binding="tns:ChinaStockWebServiceSoap">
<soap:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceSoap12" binding="tns:ChinaStockWebServiceSoap12">
<soap12:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceHttpGet" binding="tns:ChinaStockWebServiceHttpGet">
<http:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceHttpPost" binding="tns:ChinaStockWebServiceHttpPost">
<http:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
以中国股票网提供的webservice为例,说明一下,这个服务是有流量或访问限制的一天访问次数不能太多。(为什么要这样啊,不过毕竟免费的,给提供就不错啦)
主要是学习wsdl和soap,soap说的不多,不过改天再来个soap的,要不今天看到太多了,一大堆E文晕死,希望对大家有帮助
下面是它自己的一些简介和说明;完了我在说说wsdl
讲解地址:http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx
地址:http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx?WSDL
先放xml
红色的俺的一些注解说明,大概看看就是了,要搞股票系统应该多看看里面的opreation和type我用过一个opreation还不错实时获取股票信息
<?xml version="1.0" encoding="utf-8" ?> xml头定义版本和字符集- <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://WebXml.com.cn/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://WebXml.com.cn/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> wsdl定义它所需要的一些协议,命名空间,服务名什么的
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> <strong>中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票)</strong>,数据即时更新。输出GIF分时走势图、日/周/月 K 线图、及时行情数据(股票名称、行情时间、最新价、昨收盘、今开盘、涨跌额、最低、最高、涨跌幅、成交量、成交额、竞买价、竞卖价、委比、买一 - 买五、卖一 - 卖五)。此中国股票行情数据 WEB 服务仅作为用户获取信息之目的,并不构成投资建议。<a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> 和/或其各供应商不为本页面提供信息的错误、残缺、延迟或因依靠此信息所采取的任何行动负责。<strong>市场有风险,投资需谨慎</strong>。<br />此中国股票行情数据Web Services请不要用于任何商业目的,若有需要请<a href="http://www.webxml.com.cn/zh_cn/contact_us.aspx" target="_blank">联系我们</a>,欢迎技术交流。 QQ:8698053<br /><strong>使用本站 WEB 服务请注明或链接本站:http://www.webxml.com.cn/ 感谢大家的支持</strong>!<br /><br /><span style="color:#D20000;"><strong>股票输入注意事项</strong>:因上海股票和深圳股票在代号上有重叠,所以在输入上海股票请在代号前加 SH,深圳加 SZ(不区分大小写),例:上证指数 sh000001,深发展A sz000001。如不输入股票代号默认上证指数 sh000001</span><br /><br /> </wsdl:documentation> 这些是对文档的一些说明
- <wsdl:types> 类型定义或说明
- <s:schema elementFormDefault="qualified" targetNamespace="http://WebXml.com.cn/"> 下面是一些参数说明包括请求响应大家都看得懂不罗嗦啦
- <s:element name="getStockImageByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImageByCodeResponse">
<s:complexType />
</s:element>
- <s:element name="getStockImageByteByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImageByteByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockImageByteByCodeResult" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="theType" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByCodeResponse">
<s:complexType />
</s:element>
- <s:element name="getStockImage_kByteByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="theType" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockImage_kByteByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockImage_kByteByCodeResult" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockInfoByCode">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="theStockCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="getStockInfoByCodeResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="getStockInfoByCodeResult" type="tns:ArrayOfString" />
</s:sequence>
</s:complexType>
</s:element>
- <s:complexType name="ArrayOfString">
- <s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="base64Binary" nillable="true" type="s:base64Binary" />
<s:element name="ArrayOfString" nillable="true" type="tns:ArrayOfString" />
</s:schema>
</wsdl:types>
下面是消息定义,因为wsdl采用消息机制,请求和响应这会都成消息啦。当然这些会被封装成soap传输 下面的什么什么in是请求消息,out是响应消息(这是站在服务器端看,客户端反过来就是)。
- <wsdl:message name="getStockImageByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImageByCode" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImageByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImageByteByCode" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImageByteByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImage_kByCode" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImage_kByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockImage_kByteByCode" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockImage_kByteByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeSoapIn">
<wsdl:part name="parameters" element="tns:getStockInfoByCode" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeSoapOut">
<wsdl:part name="parameters" element="tns:getStockInfoByCodeResponse" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImageByCodeHttpGetOut" />
- <wsdl:message name="getStockImageByteByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImage_kByCodeHttpGetOut" />
- <wsdl:message name="getStockImage_kByteByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpGetIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpGetOut">
<wsdl:part name="Body" element="tns:ArrayOfString" />
</wsdl:message>
- <wsdl:message name="getStockImageByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImageByCodeHttpPostOut" />
- <wsdl:message name="getStockImageByteByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImageByteByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
<wsdl:message name="getStockImage_kByCodeHttpPostOut" />
- <wsdl:message name="getStockImage_kByteByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
<wsdl:part name="theType" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockImage_kByteByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:base64Binary" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpPostIn">
<wsdl:part name="theStockCode" type="s:string" />
</wsdl:message>
- <wsdl:message name="getStockInfoByCodeHttpPostOut">
<wsdl:part name="Body" element="tns:ArrayOfString" />
</wsdl:message>
下面对我们来说才是有用的啊看好了
porttype子元素也就是operation对应到具体实现就是我们类中的方法,当然理解为对外接口更好点,最起码听起来专业点。这里引用了命名空间看起来很累不过组织结构良好,input和output对应上面的message中定义的。中间还夹杂了一大堆说明,方法说明嘛不过看到人累啊
- <wsdl:portType name="ChinaStockWebServiceSoap">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeSoapIn" />
<wsdl:output message="tns:getStockImageByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeSoapIn" />
<wsdl:output message="tns:getStockImageByteByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeSoapIn" />
<wsdl:output message="tns:getStockImage_kByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeSoapIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeSoapOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeSoapIn" />
<wsdl:output message="tns:getStockInfoByCodeSoapOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="ChinaStockWebServiceHttpGet">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImageByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImageByteByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImage_kByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeHttpGetIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeHttpGetIn" />
<wsdl:output message="tns:getStockInfoByCodeHttpGetOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="ChinaStockWebServiceHttpPost">
- <wsdl:operation name="getStockImageByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF分时走势图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImageByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF分时走势图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:股票GIF分时走势图字节数组。<br /><strong>字节流到图片可以参考以下方法</strong>(.NET vb):<br />HttpContext.Current.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache) '不缓存<br />HttpContext.Current.Response.ClearContent()<br />HttpContext.Current.Response.ContentType = "image/Gif"<br />HttpContext.Current.Response.BinaryWrite(Ary) 'Ary 图片字节数组<br />HttpContext.Current.Response.End()</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImageByteByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImageByteByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>直接获得中国股票GIF日/周/月 K 线图(545*300pixel/72dpi)</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImage_kByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票GIF日/周/月 K 线图字节数组</h3><p>输入参数:theStockCode = 股票代号,如:sh000001;theType = K 线图类型(D:日[默认]、W:周、M:月),返回数据:股票GIF日 K 线图字节数组。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockImage_kByteByCodeHttpPostIn" />
<wsdl:output message="tns:getStockImage_kByteByCodeHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><br /><h3>获得中国股票及时行情 String()</h3><p>输入参数:theStockCode = 股票代号,如:sh000001; 返回数据:一个一维字符串数组 String(24),结构为:String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 - 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。</p><br /></wsdl:documentation>
<wsdl:input message="tns:getStockInfoByCodeHttpPostIn" />
<wsdl:output message="tns:getStockInfoByCodeHttpPostOut" />
</wsdl:operation>
</wsdl:portType>
马上就完了,坚持一会
下面是数据绑定(soap绑定),soapAction相当于我们的mvc中的c做流程控制的,要不服务器上它找谁去啊。style是定义文档样式 soapbody use指定使用那种类型传递soap文中说文本型 soap12是xml的标签这里也说明采用soap1.2协议版本
- <wsdl:binding name="ChinaStockWebServiceSoap" type="tns:ChinaStockWebServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getStockImageByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImageByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImageByteByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImage_kByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockImage_kByteByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<soap:operation soapAction="http://WebXml.com.cn/getStockInfoByCode" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceSoap12" type="tns:ChinaStockWebServiceSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getStockImageByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImageByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImageByteByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImage_kByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockImage_kByteByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<soap12:operation soapAction="http://WebXml.com.cn/getStockInfoByCode" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceHttpGet" type="tns:ChinaStockWebServiceHttpGet">
<http:binding verb="GET" />
- <wsdl:operation name="getStockImageByCode">
<http:operation location="/getStockImageByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<http:operation location="/getStockImageByteByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<http:operation location="/getStockImage_kByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<http:operation location="/getStockImage_kByteByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<http:operation location="/getStockInfoByCode" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="ChinaStockWebServiceHttpPost" type="tns:ChinaStockWebServiceHttpPost">
<http:binding verb="POST" />
- <wsdl:operation name="getStockImageByCode">
<http:operation location="/getStockImageByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImageByteByCode">
<http:operation location="/getStockImageByteByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByCode">
<http:operation location="/getStockImage_kByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output />
</wsdl:operation>
- <wsdl:operation name="getStockImage_kByteByCode">
<http:operation location="/getStockImage_kByteByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="getStockInfoByCode">
<http:operation location="/getStockInfoByCode" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
最后一节是webservice的名称和一些数据地址绑定uri好像更确切些
- <wsdl:service name="ChinaStockWebService">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> <strong>中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票)</strong>,数据即时更新。输出GIF分时走势图、日/周/月 K 线图、及时行情数据(股票名称、行情时间、最新价、昨收盘、今开盘、涨跌额、最低、最高、涨跌幅、成交量、成交额、竞买价、竞卖价、委比、买一 - 买五、卖一 - 卖五)。此中国股票行情数据 WEB 服务仅作为用户获取信息之目的,并不构成投资建议。<a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> 和/或其各供应商不为本页面提供信息的错误、残缺、延迟或因依靠此信息所采取的任何行动负责。<strong>市场有风险,投资需谨慎</strong>。<br />此中国股票行情数据Web Services请不要用于任何商业目的,若有需要请<a href="http://www.webxml.com.cn/zh_cn/contact_us.aspx" target="_blank">联系我们</a>,欢迎技术交流。 QQ:8698053<br /><strong>使用本站 WEB 服务请注明或链接本站:http://www.webxml.com.cn/ 感谢大家的支持</strong>!<br /><br /><span style="color:#D20000;"><strong>股票输入注意事项</strong>:因上海股票和深圳股票在代号上有重叠,所以在输入上海股票请在代号前加 SH,深圳加 SZ(不区分大小写),例:上证指数 sh000001,深发展A sz000001。如不输入股票代号默认上证指数 sh000001</span><br /><br /> </wsdl:documentation>
- <wsdl:port name="ChinaStockWebServiceSoap" binding="tns:ChinaStockWebServiceSoap">
<soap:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceSoap12" binding="tns:ChinaStockWebServiceSoap12">
<soap12:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceHttpGet" binding="tns:ChinaStockWebServiceHttpGet">
<http:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
- <wsdl:port name="ChinaStockWebServiceHttpPost" binding="tns:ChinaStockWebServiceHttpPost">
<http:address location="http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
相关推荐
**简单WSDL实例详解** WSDL,全称为Web Services Description Language,是用于描述Web服务的一种XML格式。它定义了服务的接口,包括服务提供的操作、消息格式、通信协议以及服务的位置。WSDL文件是Web服务客户端和...
以下是关于WSDL的详细解释: **为什么使用WSDL?** 在Web服务的世界中,WSDL充当了接口描述的角色,类似于COM和CORBA的IDL(Interface Definition Language)。它使得服务提供者可以清晰地定义服务接口,包括操作、...
WSDL4J是一个Java库,专门用于解析和操作Web服务描述语言(WSDL)文件。WSDL是一种XML格式,用于定义网络服务的接口,包括其输入、输出、操作和服务绑定等信息。理解WSDL4J的工作原理和使用方法对于开发和消费基于...
WSDL,全称为Web Services Description Language(Web服务描述语言),是XML的一个子集,用于定义网络服务的接口规范。它详细描述了服务提供商提供的功能、如何访问这些功能以及服务请求和响应的数据格式。在本...
在IT行业中,WSDL(Web Services Description Language)是一种XML格式的规范,用于描述Web服务及其接口。它定义了服务提供商和消费者之间的交互方式,包括消息格式、操作、地址和协议等。当我们面对“WSDL调用测试...
JavaScript调用WSDL(Web Service Definition Language)是Web服务客户端编程的一个重要方面,尤其是在需要与SOAP(Simple Object Access Protocol)服务交互时。本示例主要介绍如何在JavaScript中使用不同的库和...
8. **客户端生成**:CXF还支持从WSDL生成Java客户端代码,使得调用Web服务变得更加简单,只需按照生成的客户端代码进行操作即可。 9. **最佳实践**:在实际项目中,确保Java接口清晰、符合面向服务的设计原则,以及...
总之,“WSDL.rar”中的C# WSDL解析器为开发者提供了一种工具,用于解析和理解Web服务的接口定义,从而在C#应用中灵活地集成和调用这些服务。学习和掌握WSDL解析对于任何涉及Web服务开发的程序员来说都是至关重要的...
使用wsimport,开发者可以直接将WSDL文件转换为符合JAX-WS(Java API for XML Web Services)规范的Java源代码,然后编译并集成到自己的项目中。 在标签中,"onvif"代表了上述的开放标准,"wsdl"是Web服务描述语言...
Web服务描述语言(WSDL,Web Services Description Language)是一种XML格式,用于定义Web服务的接口,使得客户端和服务端能够理解如何交互。WSDL文件描述了服务的位置、服务使用的消息协议以及服务提供的操作。在...
【标题】:“官网下载的所有wsdl文件” 在IT领域,Web Service Definition Language(WS-DL)是一种XML格式的规范,用于定义Web服务的接口。它详细描述了服务提供者和消费者之间的交互方式,包括可用的操作、消息...
Java2WSDL 和 WSDL2Java 是两种常用的 Web 服务开发工具,分别用于将 Java 类转换为 WSDL 文件和将 WSDL 文件转换为 Java 代码。在本文中,我们将详细介绍 Java2WSDL 和 WSDL2Java 的使用方法和参数设置。 Java2...
接下来,我们将通过一个具体的示例来解释 WSDL 文件的基本结构。 #### 消息定义 消息定义是 WSDL 中的基础组成部分,用于描述请求和响应的数据结构。例如,下面的 SumRequest 和 SumResponse 定义了两个整数相加的...
- 生成的客户端代理类可能需要进行额外的配置,例如添加对证书的信任,以适应特定的服务环境。 总结来说,`wsdl.exe`是一个强大的工具,它在.NET开发中扮演着重要角色,通过自动化生成WSDL文档和客户端代理类,极...
现在,我们将深入探讨这个“php很简单的操作wsdl的例子”所涵盖的知识点。 1. **PHP与SOAP**:PHP支持SOAP扩展,可以用来创建客户端和服务端。客户端用于调用远程Web服务,而服务端则定义并实现这些服务。通过`Soap...
对于Web Service接口,尤其是基于WSDL(Web Services Description Language)的服务,Postman同样提供了强大的支持。本文将详细阐述如何在Postman中配置并调用WSDL接口。 首先,我们需要理解WSDL。WSDL是一种XML...
简单对象访问协议(SOAP)作为一种轻量级协议,用于在分布式环境中交换结构化的信息,它为异构系统间的通信提供了基础。然而,为了实现真正的互操作性,不仅需要一种通用的数据交换格式,还需要一种描述服务接口和...
该描述进一步强调了wsdl2phpgenerator的核心功能,即其简单易用性。通过使用这个库,开发者可以快速将SOAP WSDL文件转化为PHP代码,创建出与服务交互所需的类。这减少了手动编码的工作量,提高了开发效率,并且降低...
`wsdl2java`支持多种选项,以满足不同的需求: - `-d <dir>`:指定生成的Java源代码存放的目录。 - `-s`:生成Server-side Stubs,用于服务端开发。 - `-c`:生成Client-side Stubs,用于客户端调用。 - `-p ...