zoukankan      html  css  js  c++  java
  • WebApi和WebService功能特征与区别

    Web Service特征

    1、它是基于SOAP协议的,数据格式是XML

    2、只支持HTTP协议

    3、它不是开源的,但可以被任意一个了解XML的人使用

    4、它只能部署在IIS上

    Web API特征(红色标记与WebService区别)

    1、这是一个简单的构建HTTP服务的新框架

    2、在.net平台上Web API 是一个开源的、理想的、构建REST-ful 服务的技术

    3、不像WCF REST Service.它可以使用HTTP的全部特点(比如URIs、request/response头,缓存,版本控制,多种内容格式)

    4、它也支持MVC的特征,像路由、控制器、action、filter、模型绑定、控制反转(IOC)或依赖注入(DI),单元测试。这些可以使程序更简单、更健壮

    5、它可以部署在应用程序和IIS上

    6、这是一个轻量级的框架,并且对限制带宽的设备,比如智能手机等支持的很好

    7、Response可以被Web API的MediaTypeFormatter转换成Json、XML 或者任何你想转换的格式。

    8、Web API非常适合构建移动客户端服务

    以下情况可以考虑用Web API

    1、 需要Web Service但是不需要SOAP

    2、 需要在已有的WCF服务基础上建立non-soap-based http服务

    3、 只想发布一些简单的Http服务,不想使用相对复杂的WCF配置

    4、 发布的服务可能会被带宽受限的设备访问

    5、希望使用开源框架,关键时候可以自己调试或者自定义一下框架

    6、如果服务需要在http协议上,并且希望利用http协议的各种功能

    7、如果服务需要被各种客户端(特别是移动客户端)调用

    小结(仅供参考)

    总体来说,两者都是服务,只是表现形式存在一些差异

    webapi多用于基于http请求的服务应用,比如说移动服务端或者需要提供第三方API 服务的场景下

    webservice也可以应用于webapi所在的场景,但是如果是我的选择,我一般是做为内部服务的使用,好比如果一个系统我会用wcf/webservice作为内部子系统间的服务通信,而webapi用于外部服务的请求~

  • 相关阅读:
    Tensorflow安装环境更新
    IE请求访问的设置
    eclipse安装JAVA反编译插件
    eclipse导入JDK源码
    org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'PUT' not supported
    Linux学习笔记——使用指定的用户权限执行程序——sudo
    Linux学习笔记——查看Linux系统信息的方法
    Linux学习笔记——切换并取代用户身份命令——su
    JS实现电子时钟
    鼻炎
  • 原文地址:https://www.cnblogs.com/zx724792526/p/5213590.html
Copyright © 2011-2022 走看看