天下之事常成于困约,而败于奢靡。这篇文章主要讲述MAPI over HTTP 和 RPC over HTTP相关的知识,希望能为你提供帮助。
MAPI: 全称 Messaging Application Programming Interface。MAPI over HTTP 是从Exchange 2013 SP1版本开始实现的一种新的传输协议。用来替代早期的RPC over HTTP(即outlook anywhere)。
MAPI用于改进Outlook和Exchange服务之间的可靠性和稳定性,其实现是将其原本使用的RPC四层协议改为七层HTTP协议。但MAPI并非是Outlook访问Exchange的唯一协议,对于一些老的不支持MAPI的客户端,则依然使用老的Outlook Anywhere。
MAPI over HTTP优势:官方是这么说的:
- 通过使用基于HTTP的协议,对未来在身份认证方面的创新打下了基础。
- 【MAPI over HTTP 和 RPC over HTTP】设备通许中断后,提供更快速的恢复连接。因为仅需要重建TCP连接。比如设备休眠、设备切换网络环境(有线<
->
无线)
- 提供不依赖连接的会话上下文。 服务器在可配置的时间段内维护会话上下文,即使用户更改了网络。
- 虚拟目录配置
Set-MapiVirtualDirectory -Identity "Cas01\\mapi (Default Web Site)" -InternalUrl https://mail.contoso.com/mapi–ExternalUrl https://mail.contoso.com/mapi -IISAuthenticationMethods Negotiate
- 证书配置(即IIS证书,略)
- 全局启用MAPI
Set-OrganizationConfig -MapiHttpEnabled $true
#### 区别RPC over HTTP:
![image.png](https://s2.51cto.com/images/20220517/1652777325935298.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)MAPI over HTTP:![image.png](https://s2.51cto.com/images/20220517/1652777346548926.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)- RPC over HTTP: MAPI被经过两次封装,MAPI->
RPC->
HTTP。
- MAPI over HTTP: 取消了对RPC的依赖,MAPI直接封装在HTTP里。 Outlook端:
- 当使用RPC over HTTP时,协议字段对应的是 RPC/HTTP,代理服务器字段会有服务器名称。![image.png](https://s2.51cto.com/images/20220517/1652777393793336.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)- 当使用MAPI over HTTP时,协议字段对应的是HTTP,代理服务器字段为空。
![image.png](https://s2.51cto.com/images/20220517/1652777408234658.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)#### MAPI over HTTP 如何工作?- Outlook客户端发起 autodiscover POST请,并在请求中通过属性X-MapiHTTPCapability=1 通告自身支持MAPI over HTTP。
- Exchange服务器接收到请求后,发现客户端支持MAPI over HTTP,于是返回MAPI/HTTP的连接信息。
- Outlook客户端收到响应后,提示用户重启Outlook,以便于切换到新的连接。 在为重启之前,继续使用RPC over HTTP。RPC over HTTP:
![image.png](https://s2.51cto.com/images/20220517/1652778253699563.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
推荐阅读
- OpenHarmony驱动框架HDF中设备管理服务构建过程详解
- 基于鸿蒙ArkUI的eTS范式开发的仿微信界面程序
- [ C++ ] C++类与对象(中) 类中6个默认成员函数 -- 运算符重载
- makefie文件的基本说明和使用
- vi操作键盘图
- ubuntu下安装gcc,g++
- window10企业版永久密钥激活
- 提交本地项目到GitHub上
- vi基本操作