【问题标题】:Outlook add-in - save as dialog (saving files) and external linksOutlook 加载项 - 另存为对话框(保存文件)和外部链接
【发布时间】:2019-12-03 22:47:10
【问题描述】:

我正在开发 Outlook Web 加载项(上下文),用户可以在其中下载特定文件。我现在面临的问题是我无法在 Outlook for desktop 中强制另存为对话框(在 web 中它工作正常)。 所以考虑以下简单的html:

<a href='/files/test.pdf'></a>

当我在 Outlook(桌面)加载项中单击它时 - 没有任何反应。 如果我指定target='_blank' - Outlook 使用该 URL 打开空模式窗口(我想是 IE11)并且没有任何反应(有时它甚至会强制 Outlook 崩溃并重新启动,在多台 PC 上发出通知): 我注意到,如果 href 的域与加载项的域相同,则它会尝试在此弹出窗口中打开它,但如果域不同 - 在默认浏览器中打开新选项卡。

我的问题是 - 是否可以在 Outlook 桌面版中调用另存为对话框?如果不是 - 如果 URL 的域与加载项的域相同,是否可以在新的默认浏览器选项卡中打开链接?

附:我已经尝试过官方示例https://github.com/OfficeDev/Office-Add-in-JavaScript-FileDownload#get-the-filesaver-library,但它不起作用。新版本的 Outlook 可能发生了一些变化。

附言我在两台 PC 上进行了尝试 - 都安装了最新版本的 Office 365,但一台运行的是 Windows 10 18xx 版本,另一台运行的是 1909 版本。在第一台 PC 上不存在此类问题 - 所有带有 target=_blank 的链接都在默认浏览器的新选项卡中打开;在 win 版本 19xx 上 - 出现问题。将 18xx 更新为 19xx 后 - 出现问题。所以这一定和windows update有关……

【问题讨论】:

    标签: office-js outlook-web-addins


    【解决方案1】:

    我通过创建另一个域来解决这个问题,该域指向加载项的托管位置。当我需要从加载项在默认浏览器中打开新选项卡时,我会指定第二个域。

    例如:加载项托管在 myaddin.azurewebsites.net 上,然后我们创建自定义域 myaddin.com。在加载项清单中,我使用 myaddin.azurewebsites.net,在任何有 target=_blank 链接的地方,我都使用&lt;a href="https://myaddin.com/..." target="_blank"&gt;&lt;/a&gt;

    【讨论】:

      猜你喜欢
      • 2013-03-29
      • 1970-01-01
      • 1970-01-01
      • 2016-11-25
      • 1970-01-01
      • 2010-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多