web service && WCF 学习小结
Web Service和WCF技术都提供了应用程序与应用程序之间的通信。它们都是基于soap消息在客户端和服务端之间进行通信,由于soap消息是一种xml格式,因此传输的数据格式为XML。每次客户端向服务端请求数据时,客户端的服务代理,都会将请求消息转化为soap消息进行传输,而服务端在返回数据时也会将数据转化成soap消息传输。两者提供的服务都可以用WSDL(web service description language)来描述。对于客户端,它们都可以以添加引用的方式来生成服务的代理类,即向服务器请求wsdl文档,然后根据wsdl文档生成服务代理(前提是服务端允许客户端获取wsdl文档,此处可在webconfig中进行配置)。
总体来讲,WCF可看作是Web Service的一个升级版,所以不应该说是两者的区别,而应该说WCF相较于Web Service的先进性。其先进性主要有两点:(1)WCF支持的网络传输协议要明显多于Web Service,WCF支持的网络协议包括http、tcp、命名管道、MSMQ等,而web service只支持http协议;(2)WCF的服务宿主要比Web service丰富,WCF程序可寄宿在IIS、WAS、控制台应用程序、Windows客户端应用程序、Windows服务等,而web service则只能寄宿在IIS上。
就目前而言,作为数据服务,Web Service的使用已逐渐被WCF取代,因为Web Service所能实现的功能,WCF基本都能实现,而且WCF在网络协议和服务宿主上还提供了更多的可选择性。
web service && WCF 学习小结的更多相关文章
- 关于WEB Service&WCF&WebApi实现身份验证之WebApi篇
之前先后总结并发表了关于WEB Service.WCF身份验证相关文章,如下: 关于WEB Service&WCF&WebApi实现身份验证之WEB Service篇. 关于WEB S ...
- 关于WEB Service&WCF&WebApi实现身份验证之WCF篇(2)
因前段时间工作变动(换了新工作)及工作较忙暂时中断了该系列文章,今天难得有点空闲时间,就继续总结WCF身份验证的其它方法.前面总结了三种方法(详见:关于WEB Service&WCF& ...
- 关于WEB Service&WCF&WebApi实现身份验证之WEB Service篇
在这个WEB API横行的时代,讲WEB Service技术却实显得有些过时了,过时的技术并不代表无用武之地,有些地方也还是可以继续用他的,我之所以会讲解WEB Service,源于我最近面试时被问到 ...
- Web Service ,WCF以及Web API的对比
Web Service 1.基于SOAP和XML形式的返回数据. 2.只支出HTTP协议. 3.只能运行在IIS环境下. 4.不是开源的,但可以由任何支持xml的客户端下使用. WCF 1.基于SOA ...
- web service, wcf, wcf rest, web api之间的区别
在.NET Framework中,有很多种技术可以创建基于http协议的服务,譬如说web service, wcf,wcf rest和web api等等.网上有很多的文章教我们如何开发.使用这几种技 ...
- Web Service循序渐进学习
1.Web service 是什么? (WebService 是可以通过互联网远程访问调用的应用程序,实现数据传输共享.这种应用程序理解为不同服务提供帮助.能够支撑实现应用程序发布访问的技术可以称为W ...
- Web service的学习资源
看了半天的Web service,总算是对它有了一点眉目,不枉此行:)那就整理一下吧,来日还需要用到呢! 1.什么是Web service(请看这儿). 2.Web service的开发 ...
- 关于WEB Service&WCF&WebApi实现身份验证之WCF篇(1)
WCF身份验证一般常见的方式有:自定义用户名及密码验证.X509证书验证.ASP.NET成员资格(membership)验证.SOAP Header验证.Windows集成验证.WCF身份验证服务(A ...
- Web Service和WCF的区别。其实二者不属于一个范畴!!!
Web Service和WCF的区别 [1]Web Service:严格来说是行业标准,也就是Web Service 规范. 它有一套完成的规范体系标准,而且在持续不断的更新完善中. 它使用XML扩展 ...
随机推荐
- python之装饰器(decorator)
python的装饰器如果用得好,那是大神,用的不好最好别用... 装饰器(decorator)主要包含俩大属性: 1.不能改变原有函数的调用方式 2.不能改变原有函数的代码 第一个表示,我不需要改变原 ...
- C# 窗体间传值
Form1: 父窗体, Form2: 子窗体. 1.父窗体接收子窗体的返回值: public partial class Form1: Form { private void btnOpen_Clic ...
- 14-02 Java Math类,Random类,System类,BigDecimal类
Math类 Math的方法 package cn.itcast_01; /* * Math:用于数学运算的类. * 成员变量: * public static final double PI * pu ...
- .NET 线程池编程技术
摘要 深度探索 Microsoft .NET提供的线程池, 揭示什么情况下你需要用线程池以及 .NET框架下的线程池是如何实现的,并告诉你如何去使用线程池. 内容 介绍 .NET中的线程池 线程池中执 ...
- SQL 必知必会·笔记<4>使用通配符过滤数据
LIKE操作符 通配符(wildcard): 用来匹配值的一部分的特殊字符. 百分号(%)通配符 最常使用的通配符是百分号(%).在搜索串中,%表示任何字符出现任意次数: SELECT prod_id ...
- quartz配置参数org.quartz.jobStore.misfireThreshold含义解释
配置定时任务参数 quartz.properties文件时 需要配置jobStore的超过时间数 默认为60秒(这里单位为毫秒) org.quartz.jobStore.misfireThreshol ...
- maven自动部署项目以及常见问题解决
Maven自动部署war到Tomcat1. 在maven项目的pom里配置如下信息 <build> <finalName>dianxiao</finalName> ...
- (转)创建GitHub技术博客
https://blog.csdn.net/renfufei/article/details/37725057
- Linux中rm命令详解
linux下rm命令使用详解---linux删除文件或目录命令 用户可以用rm命令删除不需要的文件.该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除 ...
- ef学习一
学习内容:https://www.cnblogs.com/5ishare/p/5801229.html 注意点: 1.NuGet程序包引入ef,使用DbSet<>必须引入ef.本例EFCo ...