问题描述
- 本人webservice的概念的理解和疑惑
-
一直以来在基于springMVC做restful风格的开发。
最近要跟外面做接口,没有restful风格的接口,只有webservice方式。
于是上网恶补webservice的知识,看完之后还是有很多不确定的地方。
整理如下,望各位高人指正。
1.不管什么语言最终实现功能的单位差不多都是方法(或者叫函数),所以将这块开放到网上,供大家调用。这块各个语言有相应的工具来实现,最终得到一个url
2.要想调用,首先得让别人知道方法名、需要传入哪些参数,执行完毕会返回哪些参数,所以这个时候如果get方式访问上一步的url,则会获得这些描述信息。
3.调用的时候,按照规范,拼好xml,里面包含方法名、传入的参数。post方式到第一步的url。这时候,服务器端会将传过来的xml还原为本语言的对象,调用相应的方法处理业务逻辑,并将返回值序列化为xml,返回。
不知道我上面的理解是否正确。
解决方案
1.不管什么语言最终实现功能的单位差不多都是方法(或者叫函数),所以将这块开放到网上,供大家调用。这块各个语言有相应的工具来实现,最终得到一个url
这是restful风格,一个url对应一个方法, 但是也可以不是这样
2.要想调用,首先得让别人知道方法名、需要传入哪些参数,执行完毕会返回哪些参数,所以这个时候如果get方式访问上一步的url,则会获得这些描述信息。
如果基于soap协议和wsdl,那么这种服务是自发现的,也就是服务本身提供调用接口的信息。但是也可以不这样。
3.调用的时候,按照规范,拼好xml,里面包含方法名、传入的参数。post方式到第一步的url。这时候,服务器端会将传过来的xml还原为本语言的对象,调用相应的方法处理业务逻辑,并将返回值序列化为xml,返回。
你说的这个一般是用soap,也可以用json/urlencode编码
解决方案二:
理解webservice
webservice 概念
WebService 概念
解决方案三:
基本上差不多,webservice就是提供各种web API
restful接口规范过于严格和繁琐,所以现在提出了一个新的概念叫web API或者HTTP API,它其实就是简化restful API,
比如只需要支持GET,POST等
GET来查询,POST来提交数据。然后数据交互可以不用xml,而是用json格式,更清晰,也节省空间。
解决方案四:
以我的理解回复一下,不对的地方请谅解。
1,大致是这样的,不同的web编程语言基于(WSDL+UDDI+SOAP+XML)来发布webservice服务。
2,正常你看到的应该是XML格式的WSDL描述信息(其中包含的就是你发布的webservice服务的相关信息)。
3,说的挺好,使用层面大概就这样吧。但是真正的请求到相应(绑定)的业务比你理解的要复杂一些。
整体看你理解的挺好,大概流程没有问题。
文言描述:
WSDL:(Web Services Description Language) 网络服务描述语言。
UDDI:(Universal Description, Discovery and Integration) 通用描述、发现与集成服务。
SOAP:(Simple Object Access Protocol) 简单对象访问协议。
XML:(Extensible Markup Language) 可扩展标记语言。
解决方案五:
调用webservice一定要用post方式么?
解决方案六:
貌似现在一般的公开接口,都不用webservice了,比如百度地图api,apistore之类的。。。不知是不是webservice已经过时了。
解决方案七:
现在一般用json比较多。Web Service效率低下。你可以用soapui模拟请求。加快调试过程。