• 学习 WebService 第二步:知识准备——SOAP vs REST(wsdl和wadl区别)(转)


    原文地址:蓝精灵——默默争上游

    笔记:

    SOAPREST是两种实现WebService的主要方案(Web API部署REST貌似占了大半壁江山)
    • REST Web Services 基于 HTTP 协议
    • SOAP Web Services 支持多种传输协议:HTTP、SMTP、MIME等
    Java开发WebService最重要的两个规范
    • JSR-224 (JAX-WS:Java API for XML-Based Web Services ) ,主要使用soap协议,使用wsdl来描述;
    • JSR-311 (JAX-RS:The Java API for RESTful Web Services),使用wadl描述;
    RESTSOAP的区别:
    • REST为每一个资源指定一个唯一的URI,用HTTP的4种方法发送请求:GET、POST、PUT、DELETE直观地表示获取、创建、更新和删除。
    • SOAP仅仅使用POST方法发送请求,用一个唯一的URI标识服务的入口。(因为SOAP并不假定传输数据的下层协议,因此必须设计为能在各种协议上运行。即使绝大多数SOAP是运行在HTTP上,使用URI标识服务。这种设计被诟病之处,在于DELETE操作也要用POST方法来发送,而其实HTTP协议有更和逻辑的DELETE方法可用。)
    尺长寸短:
    REST的优点:REST简单而直观,把HTTP协议利用到了极限。
    SOAP复杂的需求摧残了易用性。
    说到底,没有谁是万能的
    • REST用WADL来描述REST接口。WADL就像是WSDL的REST版,随着REST被应用到复杂的领域,SOAP的影子无处不在。
    • 事实上,一些Web Service提供者提供的REST API只有REST的外壳,传输的请求和应答全然是简化了的SOAP。

    “没有一项技术能一劳永逸地解决所有问题,只需要在预定的约束下优美地解决所在领域的问题就足够了。

    一项新技术推出的时候总是引来无数的跟风和吹捧,只有当尘埃落定之后才能得到中肯的评价。”

  • 相关阅读:
    activiti笔记三 Activiti问题重现
    [转]电子商务文件存储及读取服务的设计和开发思路
    powerdesigner设置mysql唯一键,非主键
    git使用笔记
    activiti笔记二:用户任务
    解决方案:elipse一直loading descriptor for...
    activiti笔记一:流程图xml文件
    RabbitMq汇总
    docker汇总
    Zookeeper
  • 原文地址:https://www.cnblogs.com/dlsunf/p/8600755.html
Copyright © 2020-2023  润新知