Webservice,WCF,WebAPI--特点及进化史

2024-01-10 07:52

本文主要是介绍Webservice,WCF,WebAPI--特点及进化史,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

WebService、WCF 和 WebAPI 是 Microsoft 在不同时期推出的三种基于不同技术和架构的 Web 服务技术。它们在不同时期的演化中逐步推出,以满足不断变化的需求和技术发展的趋势。

1. WebService:WebService 是一种使用 SOAP 协议和 XML 消息格式的 Web 服务技术,由 W3C 制定,早期用于实现跨平台的分布式应用程序。WebService 基于 HTTP 协议,通过远程调用方式提供服务,支持基于 XML 和 JSON 的数据传输。WebService 逐渐被 RESTful API 所替代,但在某些场景下仍然有应用。
   - 进化历程:WebService 最早出现在 2000 年左右,它使用 SOAP 协议和 XML 消息格式进行通信,旨在实现跨平台的分布式应用程序。它使用了较为复杂的消息格式和通信机制,对开发人员和消费者来说不够简洁明了。
   - 优点:
     - 跨平台(操作系统):WebService 可以在不同的操作系统和编程语言之间进行互操作,使得跨平台集成变得容易。
     - 安全性:WebService 提供了基于标准的安全机制,如 XML 数字签名和加密,可确保数据的安全传输。
   - 缺点:
     - 复杂性:WebService 的消息格式和通信机制相对复杂,开发和调试的难度较高。
     - 性能:由于采用了 XML 消息格式(XML类XAML,内含较多无用标签信息,和传输信息一起发送,导致数据量增大),WebService 的性能较低,对于大量数据传输不太适合(因为现在前端主流的JavaScript对于XML格式信息的解析很慢,促进诞生了后续的主以json传输格式的WebAPI  Web服务技术)
     
2. WCF:
WCF 是一种面向服务的开发框架,可以用于构建分布式应用程序和 Web 服务。与 WebService 不同,WCF 提供了更加灵活的通信机制,支持多种传输协议和编码方式,包括 HTTP、TCP、MSMQ 等多种协议。WCF 具有强大的安全性和可靠性功能,是企业级应用程序开发的首选技术。
   - 进化历程:WCF 在 2006 年发布,它是一种面向服务的开发框架,继承了 WebService 的一些特性,但提供了更加灵活的通信机制和丰富的功能。WCF 支持多种传输协议和编码方式,可用于构建复杂的分布式应用程序和 Web 服务。
   - 优点:
     - 灵活性:WCF 提供了多种传输协议和编码方式的选择,使得开发人员可以根据实际需求进行配置和调整。
     - 安全性和可靠性:WCF 具有强大的安全性和可靠性功能,如消息加密、数字签名、事务支持等。
   - 缺点:
     - 复杂性:WCF 的配置和使用相对复杂,需要一定的学习和掌握成本。
     - 性能:由于提供了众多功能和灵活的通信机制,WCF 的性能相对较低,对于大规模数据传输可能存在一定的瓶颈。

3. WebAPI:WebAPI 是一个基于 RESTful 架构风格的 Web 服务框架,专门用于构建 HTTP 服务。WebAPI 使用 HTTP 协议作为通信协议,支持 XML 和 JSON 等多种消息格式WebAPI 提供了易于使用的路由、过滤器、模型绑定、参数验证等功能,使得开发人员可以快速、简单地构建 HTTP 服务,并支持跨平台、跨语言的应用程序集成。
   - 进化历程:WebAPI 在 2012 年推出,它基于 RESTful 架构风格,专注于构建 HTTP 服务。WebAPI 支持简单、轻量级的通信机制和消息格式,使得开发人员可以更加快速和简单地构建 HTTP 服务,并满足跨平台、跨语言的集成需求。
   - 优点:
     - 简单性:WebAPI 提供了简单易用的路由、过滤器、模型绑定等功能,使得开发人员可以快速构建 HTTP 服务。
     - 性能:由于采用了轻量级的通信机制和消息格式,WebAPI 的性能较高,对于大规模数据传输更为适合。
   - 缺点:
     - 功能相对较少:相比于 WCF,WebAPI 的功能相对较少,主要关注于 HTTP 服务的构建。

总的来说,WebService、WCF 和 WebAPI 在技术演化中逐步推出,以满足不同阶段的需求和技术发展的趋势。WebService 是早期的基于 SOAP(XML) 的 Web 服务技术,而 WCF 是面向服务的开发框架,支持多种协议和功能。最后,WebAPI 基于 RESTful(json) 架构风格,专注于构建轻量级的 HTTP 服务。随着 WebAPI 的推广和普及,越来越多的企业和开发者开始使用 WebAPI 来构建 HTTP 服务.

这篇关于Webservice,WCF,WebAPI--特点及进化史的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/590087

相关文章

便携式气象仪器的主要特点

TH-BQX9】便携式气象仪器,也称为便携式气象仪或便携式自动气象站,是一款高度集成、低功耗、可快速安装、便于野外监测使用的高精度自动气象观测设备。以下是关于便携式气象仪器的详细介绍:   主要特点   高精度与多功能:便携式气象仪器能够采集多种气象参数,包括但不限于风速、风向、温度、湿度、气压等,部分高级型号还能监测雨量和辐射等。数据采集与存储:配备微电脑气象数据采集仪,具有实时时钟、数据存

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

Git 的特点—— Git 学习笔记 02

文章目录 Git 简史Git 的特点直接记录快照,而非差异比较近乎所有操作都是本地执行保证完整性一般只添加数据 参考资料 Git 简史 众所周知,Linux 内核开源项目有着为数众多的参与者。这么多人在世界各地为 Linux 编写代码,那Linux 的代码是如何管理的呢?事实是在 2002 年以前,世界各地的开发者把源代码通过 diff 的方式发给 Linus,然后由 Linus

Java中WebService接口的生成、打包成.exe、设置成Windows服务、及其调用、Apache CXF调用

一、Java中WebService接口的生成: 1、在eclipse工具中新建一个普通的JAVA项目,新建一个java类:JwsServiceHello.java package com.accord.ws;import javax.jws.WebMethod;import javax.jws.WebService;import javax.xml.ws.Endpoint;/*** Ti

一文说清什么是AI原生(AI Native)应用以及特点

引言:智能新纪元 如今,走在街头,哪儿不被智能科技包围?智能音箱、自动驾驶汽车、聊天机器人......这些都在用不同的方式提升我们的生活体验。然而,究竟什么才能称得上“AI原生应用”呢? 什么是AI原生?   AI原生不仅仅是简单地引入人工智能功能。真正的AI原生应用犹如一个智慧的“大脑”,它的每一个决策都依赖于深度学习与数据分析。以Siri为例,它通过学习用户的习惯和需求,提供个性化的

webservice系列3---chain

本节摘要:本节主要介绍webservice的高级特性chain的开发和配置 1.引言       之前在上webservice系列2---javabean&handler中讲了handler的使用,当有多个handler的时候,难道我们要一个一个的在wsdd文件中配置,然后一个一个的引入到需要的webservice中码?of course ,no。Apache组织已经替我们考虑到了这种需求,ch

webservice的安全机制2---handler实现

本节摘要:本节介绍使用handler的方式来实现webservice的IP地址的校验。   1.引言 前一节介绍了使用users.lst文件来实现webservice的用户名和密码的校验, 本节介绍使用webservice的handler来实现webservice的安全校验。 这里,不用用户名和密码来实现安全校验,换一种方式,采用IP地址校验的方式。 这里通过一个配置文件来控制是否打开

webservice的安全机制1---users.lst

本节摘要:本节主要介绍webservice的安全机制。   1.引言   俗话说,安全第一;   那么,我们软件中是否有安全,安全是否重要呢?   sure,软件开发中当然也有安全,安全显得尤为重要。   本节,我们将一起来看看webservice的安全问题。   之前在前几节中写了webservice开发相关的知识,接下来几节我会写webservice安全相关的问题。   闲扯一

WebAPI (一)DOM树、DOM对象,操作元素样式(style className,classList)。表单元素属性。自定义属性。间歇函数定时器

文章目录 Web API基本认知一、 变量声明二、 DOM1. DOM 树2. DOM对象3. 获取DOM对象(1)、选择匹配的第一个元素(2)、选择匹配多个元素 三、 操作元素1. 操作元素内容2. 操作元素属性(1)、常用属性(href之类的)(2)、通过style属性操作CSS(3)、通过类名(className)操作CSS(4)、通过classList操作控制CSS(5)、操作表单

过滤器:精密过滤器特点及应用范围概述

精密过滤器(又称作保安过滤器),筒体外壳一般采用不锈钢材质制造,内部采用PP熔喷、线烧、折叠、钛滤芯、活性炭滤芯等管状滤芯作为过滤元件,根据不同的过滤介质及设计工艺选择不同的过滤元件,以达到出水水质的要求。随着过滤行业的不断发展,越来越多的行业和企业运用到了精密过滤器,越来越多的企业加入了精密过滤器行业。   一、精密过滤器的性能特点及应用   1、精密过滤器的性能特点   (1)过滤精