【发布时间】:2026-01-20 11:40:01
【问题描述】:
我们实现了一个 mailapp 插件。如果我们在 Excahnge 2016 中的邮箱中安装插件,我们遇到了一个奇怪的错误。EWS requet 存在一些问题。我们正在使用 office.js 请求交换 2016。
makeEwsRequestAsync(data, callback, [userContext])
上述方法用于与exchange进行通信。因此,如果在 Exchange 2016 上安装了 mailapp,并且我们通过上述函数从电子邮件中请求一些额外的属性,我们会收到一个带有错误的 asyncResult 对象:
- 错误代码:9020
- 消息:远程服务器返回错误:(401 Unauthorized)
在文档中有一条说明,作为交换,应该启用 OAuth。
注意:服务器管理员必须在客户端访问服务器 EWS 目录上将 OAuthAuthentication 设置为 true,以启用 makeEwsRequestAsync 方法来发出 EWS 请求
我们已检查此设置并已设置。我们还应该检查什么?有什么建议吗?
【问题讨论】:
-
你能提供更多细节吗?您从哪个客户端(Outlook Web Access、Outlook Desktop 等)进行测试。您使用的是哪个客户端的版本号?在服务器端,什么版本的 Exchange 2016?它是 On Prem 还是 Office365?您是否有不同的内部/外部 EWS 网址?
-
@OutlookWebAddinsTeam 我将收集您所要求的所有信息。但是,它是客户在 Prem 安装,因此需要时间从他们那里收集所有信息。直到我可以说我们已经在 OWA 上检查过了。你的最后一个问题很感兴趣。如果客户有不同的内部/外部 EWS url,是否有任何问题? (这可能是真的。)这些网址应该相同吗?如果我们使用 makeEwsRequestAsync 方法,对 mailapp 有什么要求?谢谢
-
具有不同内部/外部 EWS url 的 Exchange 服务器存在一个已知/已解决的问题。 (它在 2016 年 12 月修复),这将导致这些调用失败。如今,拥有不同的内部/外部 URL 相当少见,如果交换服务器仍然具有这些设置,通常是因为当它们不同时留下了这些设置。
-
@OutlookWebAddinsTeam 我收到了一些有关环境的信息。 - 测试客户端:OWA - 这是一个 On Prem Exchange - 在服务器端安装了 Exchange 2016 cu3 - 外部和内部 EWS URL 相同 您能否提供 Exchange 2016 cu3 更新的下载链接?我们在任何地方都没有找到那个版本,我们想在内部调查此案。谢谢。
标签: exchange-server outlook-addin office-js outlook-web-app