Office 加载项中的 DialogApi 适用于所有主机?

DialogApi in Office Add-ins available for all hosts?

我们知道 OAUTH 流程不能像普通(非 iFramed)网络应用程序那样在 Office 加载项中实现,我们必须依赖一些弹出技术:请参阅最佳解释 here

为了克服这个问题,Microsoft 在 Office.js 中发布了 dialogAPI。此对话框 API 有一段时间仅适用于 Office 桌面。

如果开发人员想要一个适用于 Office Online 的解决方案(并允许在 Office 商店中分发),他必须实施一个涉及普通旧浏览器弹出窗口的后备解决方案。 备注:这是我们在 open source sample for Outlook that we released 中所做的。

如文档中所述,要测试可用性,我们必须使用此代码示例进行检查

if (Office.context.requirements.isSetSupported('DialogAPI', 1.1)) {
// Use Office UI methods; } else { // Alternate path }

问题是,今天,即使 if() 语句 returns 为假,我也试图强制使用 dialogAPI。令人惊讶的是,看起来 dialogAPI 即使在 Office Online 中也能正常工作! (Chrome、Edge、FF、IE 测试)。太棒了!

我的问题是:

Benoit,我会联系团队查看状态,我们会尽力回复您。

就一般信息而言:功能确实经常得到部署 "dark" -- 例如,在 Excel APIs,这是我主要工作的领域,我们可能有 ExcelApi 1.3 是我们工作了几个月的东西......但我们并不是在那段时间不检查任何东西!相反,我们不断地检查并滚动生产更改,但我们不保证它们在 (Office.context.requirements.isSetSupported('ExcelApi', 1.3) returns true 之前可用 and/or 完全测试。因此,您可能会看到大部分功能已经存在 -- 但团队还没有完全"signed off" 。所以,我会认为这是 internal/non-production API 直到 isSetSupported does return true;但您可能可以推断该功能已接近完成,因此它应该在不久的将来亮起(免责声明,我个人对这个特定的 API 了解甚少;所以请把它与一粒盐)。

dialog API will be available for online hosts and it will work across all major modern browsers. As for the ETA I cannot give you a specific date but rest assured this is top of mind for us. You can check the official status in our Add-in Availability page; API 已在 Windows 桌面、Mac、IPad 中可用。