100天土鸡饲养计划(2)
来源:互联网 发布:同花顺软件的参数设置 编辑:程序博客网 时间:2024/05/16 23:47
今天因为工作变动的事情,浪费了不少时间,其余时间了解了一下WebService的工作原理。
WebService是一种通信技术,是基于XML+SOAP+WSDL+UDDI来实现的,一个个的说。
XML:可扩展标记语言,其实就是按照一定规则编写的纯文本文件!它的结构大概类似于这样:
<?xml version="1.0" encoding="ISO-8859-1"?><?xml-stylesheet type="text/css" href="cd_catalog.css"?><CATALOG> <CD> <TITLE>Empire Burlesque</TITLE> <ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY> <COMPANY>Columbia</COMPANY> <PRICE>10.90</PRICE> <YEAR>1985</YEAR> </CD> <CD> <TITLE>Hide your heart</TITLE> <ARTIST>Bonnie Tyler</ARTIST> <COUNTRY>UK</COUNTRY> <COMPANY>CBS Records</COMPANY> <PRICE>9.90</PRICE> <YEAR>1988</YEAR> </CD>....</CATALOG>
正式由于它是纯文本文件,所以任何系统都能识别它,WebService能跨平台的原因就在于此!
SOAP:简单对象访问协议,百度百科上的解释是“一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议”,它的结构大概类似于这样:
POST /InStock HTTP/1.1Host: www.example.orgContent-Type: application/soap+xml; charset=utf-8Content-Length: nnn<?xml version="1.0"?><soap:Envelopexmlns:soap="http://www.w3.org/2001/12/soap-envelope"soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.example.org/stock"> <m:GetStockPrice> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </soap:Body> </soap:Envelope>可以看出它与上面的XML片段风格完全一致,因为本来就是基于XML的!
POST /InStock HTTP/1.1Host: www.example.orgContent-Type: application/soap+xml; charset=utf-8看起来是不是很熟悉?没错,我们的HTML文件里也有相似的代码,因为SOAP协议也和HTML文件一样,是通过HTTP协议来进行通信的!而且仅能通过HTTP协议通信,这个也是其性能的弊端吧!
WSDL:网络服务描述语言,是使用XML编写的,用来描述WebService服务,简单来说,它就是用来描述某个WebService的具体信息的,如提供的接口名称,所需的参数名称,参数类型,是否返回值,返回类型等等,所以叫做“描述”语言。它的结构类似于这样:
<message name="getTermRequest"> <part name="term" type="xs:string"/></message><message name="getTermResponse"> <part name="value" type="xs:string"/></message><portType name="glossaryTerms"> <operation name="getTerm"> <input message="getTermRequest"/> <output message="getTermResponse"/> </operation></portType>UDDI:即统一描述、发现和集成协议,百度百科的描述为“统一描述、发现和集成协议是一种规范,它主要提供基于Web服务的注册和发现机制,为Web服务提供三个重要的技术支持:①标准、透明、专门描述Web服务的机制;②调用Web服务的机制;③可以访问的Web服务注册中心。”,因为我也不是特别懂这个,但就我理解的是,UDDI也是基于XML和SOAP协议,实现了一组公共接口,企业和公司可以通过这组接口,将自己的WebService服务注册到注册中心,其他需要服务的人,通过查询注册中心可以使用所有注册到这里的WebService服务。但是我到现在还是不知道,这个注册中心的物理位置是在哪些地方?
所以说WebService其实是一种通信技术,而我昨天写的,通过VS2012建立WebService服务应该叫做ASP.NET WebService,是微软自己实现的框架,封装了底层的具体实现,避免了自己手动去写WSDL和满足SOAP协议的消息~
0 0
- 100天土鸡饲养计划(2)
- 100天土鸡饲养计划(1)
- 100天土鸡饲养计划(3)
- 100天土鸡饲养计划(6)
- 100天土鸡饲养计划(7)
- 100天土鸡饲养计划(8)
- 100天土鸡饲养计划(9)
- 100天土鸡饲养计划(10)
- 100天土鸡饲养计划(11)
- 100天土鸡饲养计划(14)
- 100天土鸡饲养计划(15)
- 100天土鸡饲养计划(16)
- 100天土鸡饲养计划(17)
- 100天土鸡饲养计划(18)
- 100天土鸡饲养计划(19)
- 100天土鸡饲养计划(20)
- 100天土鸡饲养计划(21)
- 100天土鸡饲养计划(22)
- 1254 推箱子
- curl_easy_setopt-curl库的关键函数之一
- go管理多个项目如何书写gopath以及利用脚本控制项目管理路径
- 利用SecureCRT上传、下载文件(使用sz与rz命令)
- CMFCShellTreeCtrl和CMFCShellListCtrl快速构建资源管理器
- 100天土鸡饲养计划(2)
- Linux C 编程之遍历子目录及所有文件
- Android studio 截取手机屏幕
- Poj1321 棋盘问题 DFS
- 布局加载时,edittext 不获得焦点
- HDU1287 破译密码
- 通过TCP协议实现多个client端可以并发连接到server,client可获得server指定目录下的文件列表。
- 安卓--关于不同activity之间使用SharedPreferences
- java造轮子之自己写简单的HTTP服务器