14

我正在尝试通过 Windows 窗体应用程序从我的 O365 邮箱中读取电子邮件。我希望我的应用程序使用我的用户名和密码从 O365 邮箱读取电子邮件。是否可以在不在 Azure 上注册应用程序的情况下访问 O365 api?(仅使用用户凭据)

我在 msdn 上关注了这篇文章, https: //msdn.microsoft.com/en-us/library/office/dn567668(v=exchg.150).aspx 我在这一行有一个问题:

result = context.AcquireToken(resourceId, ClientID, _returnUri); // parameters are no longer valid in this method
4

2 回答 2

16

是的,您可以使用Exchange Web 服务 API。它是为客户端应用程序设计的。按照链接,你可以找到很多例子。

需要注意的是:创建服务客户端,需要指定Exchange Server的版本,应该是ExchangeVersion.Exchange2013_SP1在线交换。

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
于 2015-07-30T14:38:23.607 回答
6

(二)更新:

自 2021 年 3 月 18 日起 - Exchange Web 服务基本身份验证的停用已暂停,直至另行通知。请参阅最新的附加链接。

更新 - Exchange Online 弃用基本身份验证

(第一)更新:

微软于 2020 年 4 月 3 日宣布,鉴于当前的 COVID-19 危机,对于仍在积极使用它的租户,Exchange Web 服务将继续照常运行,直到 2021 年下半年。

我们将继续默认为新创建的租户禁用基本身份验证,并从 2020 年 10 月开始在没有记录使用情况的租户中禁用基本身份验证

基本身份验证和在线交换 - 2020 年 4 月更新

下面的帖子仍然适用于这些变化,它只是被推迟了,没有确切的日期。有关完整详细信息,请参阅上面的链接。

原来的:

鉴于这是一个相当受欢迎的问题,在 Google 搜索排名中的排名很高,可能值得注意的是,在 Exchange Web 服务退役之前,它只剩下 12 个月的时间(在撰写本文时)。

连接到这些服务的首选方法是通过 OAuth。

问:当您进行此更改时,我的应用程序会停止工作吗?

答:可能,是的,这取决于应用程序本身及其编码方式。如果它使用 EWS,并且如果它使用基本身份验证,那么是的,在 2020 年 10 月 13 日它将无法连接。但是,如果应用程序使用的是 Modern Auth/OAuth,那么不会,它会像以前一样继续工作。

Office 365 的 Exchange Web 服务 (EWS) API 即将发生的变化

对于当前使用 Matt 的上述方法用于 Office 365 邮件服务的任何人,这将适用。任何使用本地交换服务的人都不会受到影响。

于 2019-10-03T18:26:48.553 回答