WEB开发网
开发学院服务器Mail服务器 Exchange 2007新特性与二次开发 阅读

Exchange 2007新特性与二次开发

 2007-12-03 16:26:40 来源:WEB开发网   
核心提示:三、 如何利用Exchange Server 2007 Web Service进行二次开发Exchange Web Service API 工作流程Exchange Server 2007 web service也是基于标准的Web Service实现原理的:HTTP/XML/SOAP/WSDL 基于这种标准的实现,我

三、 如何利用Exchange Server 2007 Web Service进行二次开发

Exchange Web Service API 工作流程

Exchange Server 2007 web service也是基于标准的Web Service实现原理的:HTTP/XML/SOAP/WSDL 基于这种标准的实现,我们就能很容易地理解Exchange Web service API 工作流程:它是一种基于客户端访问/服务器端响应的方式,通过这种响应来完成数据传输,功能执行,消息提醒等功能。基本过程如图所示:

当客户端要发送一个请求或执行一个操作时,首先需要将所要执行的操作构建成XML元素,接下来就需要对XML的传输创建一个SOAP消息,创建完SOAP消息以后,就需要对XML消息进行序列化,以便于通过HTTP协议进行传输,然后作为一个请求进行发送,客户端发送请求以后就会被服务器接受,服务器接受以后就会执行相应的操作,解除序列化,提取出XML的信息,按照客户端的要求执行操作。最后会将执行的结果作为响应发送回客户端,客户端会执行与服务端相同的操作,解除序列化,提取XML消息。

两个需要熟悉的概念:Operations(操作),Proxy Objects 代理对象

在Exchange Web Service进行开发前,我们需要理解Operations(操作),Proxy Objects (代理对象)这两个基本概念:

Operation(操作):Exchange 2007提供了29个操作(Operations),操作是指Exchange Server允许客户端所能执行的动作,它们对应于29个由客户端访问服务器所提供的.net web方法。

例如:CreateItem 操作,利用这个操作我们可以创建日程安排、邮件信息、会议请求以及联系人。

Proxy Object(代理对象):一般来说客户端在发出调用请求时并不是直接构造XML这样的数据结构,我们更喜欢采用对象模型的方式来对Exchange Server进行操作,Proxy在这里就是一个对象模型,它提供了Web Service的访问接口,通过这个访问接口,我们就可以对这些对象进行操作,比如设置属性,方法,然后Proxy(对象代理)又会将我们对这些对象的操作转化成XML的元素。

开发前的环境部署

正如我们前面所提到的,Exchange Web Service是应用在CAS上的,因此我们需要一台装有Exchange server2007 Client Access(客户端访问)角色的服务器,来引用EWS。在这台服务器上我们可以从IIS的默认网站下面找到虚拟目录EWS。在这个虚拟目录下面主要有以下几个文件:

Services.wsdl:描述客户端和服务器之间的约定。

Messages.xsd:定义请求和响应的SOAP。

Types.xsd:定义了在Soap消息中使用的元素。

Exchange.asmx:定义了EWS的Web引用。

编写一个Web Service的应用一般分为四个步骤:

(1) 创建代理对象引用参考。

在Visual Stadio 2005 中,当我们建立完一个新的工程后,就可以为这个工程添加一个Web引用,我们在这里引用的就是一台装有Client Access 角色的服务器上的EWS虚拟目录下的Services.wsdl文件。大家可以参考以下的截图:

Tags:Exchange 特性 二次

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接