使用嵌入式浏览器强制打开Outlook加载项弹出窗口

问题描述 投票:17回答:1

我发现我的Outlook加载项(在Outlook 2016中运行)出现问题,当我使用window.open打开弹出窗口时,它有时会在用户的默认浏览器(例如Chrome)中打开,而不是运行加载项的浏览器(例如,嵌入在Outlook 2016中的IE11 Web视图)。这是一个问题,因为它会阻止弹出窗口与加载项通信,这对于点击劫持保护是必需的。

有没有办法强制弹出窗口在运行加载项的同一浏览器中打开,而不使用Dialog API?我想支持要求集1.3。

outlook-web-addins
1个回答
2
投票

您应该检查displayDialogAsync API是否存在。它被添加到需求集1.4中。

如果存在,我们建议使用它。请注意,对话框只能调用Office.context.ui.messageParent API。此API允许对话框与加载项进行单向通信。加载项可以使用这些消息来利用Office.js API。

如果displayDialogAsync API不存在,您可以利用window.open。但是,在这种情况下,将不会启动默认浏览器。

© www.soinside.com 2019 - 2024. All rights reserved.