推荐用于 WP7 应用程序的 Exchange Server API
我正在研究开发一个适用于 Windows Phone 7 的应用程序,该应用程序需要从 Exchange Server(只读)访问电子邮件/日历信息。
我认为有 2 个选项 EWS 或 ActiveSync。
WP7 仅支持基本身份验证。
默认情况下,在 Exchange 服务器安装中,EWS 虚拟目录禁用基本身份验证,这意味着需要更改 Exchange Server 的配置以允许使用 EWS。
ActiveSync 协议看起来需要一些时间来理解并开发实现。
问题是 1. 人们为 EWS 启用基本身份验证有多常见?这是大多数企业可能不想做的事情吗?
- 学习和使用ActiveSync协议有多难?这是可以在几天、几周或几个月内完成的事情吗?
I am investigating developing an app for Windows Phone 7 that requires access to email/calendar information from Exchange Server (read only).
The way I see it there are 2 options EWS or ActiveSync.
WP7 only supports Basic Authentication.
By default on Exchange server installations the EWS virtual directory has Basic Authentication disabled meaning a configuration change of Exchange Server to allow EWS to be used.
The ActiveSync protocol looks like it would take some time to get your head around and develop an implementation.
The questions are
1. How common is it for people to enable basic authentication for EWS? Is this something that most businesses are likely to not want to do?
- How difficult is it to learn and use the ActiveSync protocol? Is it something that could be done in days, weeks or months?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
1)为了了解 EWS 服务器的常见配置,我会联系一些系统管理员并询问他们。也许可以尝试https://serverfault.com/
1)学习某件事的难度很大程度上取决于学习者的技能和经验以及可用的教学资源。这是一个不简单的协议,所以我不希望学习它需要几天的时间。实施 Excahange ActiveSync 还会产生许可成本,我怀疑这会使其成为一个昂贵的选择。
1) To find out about the common configuration of EWS servers I'd spek to some sysadmins and ask them. Maybe try on https://serverfault.com/
1) How difficult something is to learn very much depends on the skills and experience of the person learning and the teaching resources available. This is a non-trivial protocol so I wouldn't expect learning it to take days. There will also be a licensing cost of implementing Excahange ActiveSync which I suspect would make it an expensive option.
选项 3:创建您自己的 Web 服务,充当 EWS 代理并为您进行身份验证。丑陋且有点痛苦,但如果您的应用程序架构良好,一旦 WP7 支持更好的身份验证,切换到直接点击 EWS 应该非常简单。
Option 3: Create your own web service that acts as a proxy to EWS and does the authentication for you. Ugly and a bit painful, but if your app is architected well, once WP7 supports better authentication, switching to directly hit EWS should be pretty simple.
ActiveSync 很痛苦,并且不支持 EWS 支持的所有内容。如果您有这种选择,我建议您选择 EWS 路线。
ActiveSync is painful and does not support everything that EWS supports. I would recommend going the EWS route if you have that option.
如果您要使用 ActiveSync,请再考虑一下...它使用 wbxml,并且您需要创建自己的 API 来执行调用 - 这意味着创建标记化的 blob,它必须 100% 完美,并考虑到任何类型的消息项目的所有方面你正在反对或将冒着制造坏物品甚至有毒物品的风险。错误的 EAS 呼叫造成的损失很可能超出您的客户群……因此,您需要非常小心。此外,虽然规格是公开的,但它需要非常昂贵的许可证。如果您获得许可,则需要获得具有特定时间表的支持合同才能获得开发人员支持。对于一个开发团队来说,可能需要 3-5 年左右的时间才能完成客户端的完整实现并解决大部分错误。因此,就电子邮件开发技能而言,您和您的其他开发人员需要非常核心。可能有包装 EAS 调用的第三方 API...但是,您应该确保它们已获得许可,并且该许可证将涵盖您的开发 - 因此,您需要自行研究这些 API。
EWS 具有更多功能,并且更易于使用,这也是我们所建议的......此外,没有特殊许可等。
If your going to use ActiveSync, think again... it uses wbxml and you would need to create your own API for doing calls - this means crating tokenized blobs which must be 100% perfect and account for all aspects of whatever type of messaging items you are going against or will risk creating bad items or even poison ones. The devistation caused by bad EAS calls could well exceed your customer base... so, you need to be very careful. Also, while the specs are public, it needs an very expensive license. If you license, you would need to get a support contract with a specific schedule in order to get develper support. With a team of developers, it will likely take 3-5 or so years to do a full implementation client side and work out most of the bugs. So, as far as the skills in email development, you and your other developers would need to be pretty hard-core. There may be third party APIs which wrap EAS calls... however, you should be sure that they are licensed and that that the license would cover your development - so, you would need to research those on your own.
EWS has more features and is far, far easier to use and is what is suggested... further, there is no special licensing, etc.
使用代理 Web 服务+Exchange 托管 API,这样 WP7 就可以对抗 Exchange,而无需编写大量代码:
http://www.telerik.com/products/windows -phone/getting-started/exchange-client.aspx
...也可以通过这种方式来使用NTLM。
在考虑 EAS 之前...
http://blogs .msdn.com/b/webdav_101/archive/2011/09/29/new-to-exchange-activesync-development.aspx
Using a proxy web service+Exchange Managed APIs so that WP7 can go against Exchange without writting a ton of code:
http://www.telerik.com/products/windows-phone/getting-started/exchange-client.aspx
... can also use this approach to use NTLM.
Before considering EAS...
http://blogs.msdn.com/b/webdav_101/archive/2011/09/29/new-to-exchange-activesync-development.aspx