问题描述
公司要发布API , 然后学习WebService.接触到以下几个名次或概念.rest restful SOAP WSDL OAuth apache-cxf 等...我现在的理解:rest 风格: 具体的表现形式,由请求头信息来表达.一个URL代表一个资源,由http的这四种post get delete put 来 代表 增查删改, 对资源操作.restful : 符合rest 风格的框架,就可以叫restfulsoap: 用xml类型信息来请求和响应.没理解和 WebService , API 啥关系.wsdl: 是对api的说明.OAuth: 是个安全框架? 这个一点都不了解诶.cxf : 是符合 soap 的协议, 搭建和访问 WebService 的框架?另外看见一个帖子:http://www.iteye.com/topic/1121252里面的 UserRestService 什么要指定方法名呢?不是add这种能体现出事物目的的url是不合理的么?ps: 这种观点来自于: http://www.ruanyifeng.com/blog/2011/09/restful.html不知道是不是正确的.还有关于那个帖子里 BOP 服务是指什么?还有 WebRequest 这个类,不太明白他和HttpServletRequest 是什么关系.如果说http协议 是rest 的一种实现架构????谁能把这些概念,帮我能连成一幅图,描述出来他们的关系.....我真纠结了,谢谢..
解决方案
你太纠结概念了,学习任何东西都是螺旋上升的过程,你刚接触webservice的话不用纠结那么多概念。首选明确目的是什么,发布API,即发布接口提供给别人调用。接口调用肯定要遵守一定的规范,即要有协议,目前主流的协议有两种:一种基于http协议,即rest方式,也就是你说的rest架构风格,当然也可以由其他简洁的协议来实现rest风格,但是目前来说基本都是用的http协议。简洁,快速。也是发展趋势。第二种即soap协议,比较繁杂,定义了一大堆的东西,基于这种协议有很多框架,cxf就是典型的基于soap协议实现的接口调用框架。至于你上面说的wsdl文件啊OAuth等等都是衍生物了。建议你先写,写个rest接口的例子,可以用Jersey或者spring rest来写,网上例子也很多。再写webservice,用cxf。这样你就会有比较清晰的认识,等你写过一段时间后再来理解这些概念,才能更加深刻。
解决方案二:
去电驴里面下点视频学学就能上手了