2016-03-07 119 views
2

在我们的Web应用程序中,我们希望能够根据打开网站的主机在相同的URL上显示不同的内容。例如,https://localhost:44300将根据从浏览器或办公室js任务面板中打开的行为而有所不同。在不包含office.js的情况下检测Office插件主机

尽管如此,我们希望不要包含office.js javascript,直到我们知道该网站是从办公室的js任务窗格内访问的。因此也不可能使用Office.context.requirements.isSetSupported

我们目前的做法是查看网址,因为它包含_host_Info。作为一个例子,我们做如下检查现在

if(window.location.search.indexOf('_host_Info=Word') > -1) { /* initiate app for word js addin */ } 

即使这个工作,它似乎并没有得到很好的解决 - 特别是如果我们想浏览网站上的其他网页。因此,我们希望Office主机可以被另一种方式检测到,而不必事先包含Office.js脚本

+1

我们正在评估加入一个API来检测主机(“的Excel,Word,Outlook中,等)平台(台式机, Mac,Web等)info。为了确保我们将它考虑在内,你介意描述你正面临的特定用例,这导致你寻求这个API吗?谢谢! –

+0

Hey Michael!在Web,VSTO和Office Web插件中运行的SaaS [Templafy](http://templafy.com),我们很高兴向您展示我们的解决方案和我们正面临的使用案例,请与我联系电子邮件地址:[email protected] –

+0

Th安克斯,奥斯卡。这听起来确实很有趣,甚至不考虑hostInfo的讨论。让我把你的联系方式传给一位同事Sudhi,看看他是否想在某个时候向你们伸出援助之手(尽管如果他不立即这样做的话,请不要忽视)。 –

回答

2

您描述的情况不被支持 - 并且如实地,我不知道你多久是这样想要使用完全相同的网站作为Office加载项和独立网站。我们经常看到的是人们会重新使用一些相同的通用库和CSS,但对于每种场景都有不同的HTML页面。

请注意,作为Office加载项运行时,页面必须包含对Office.initialize的引用。这又使得重新使用加载项和独立站点的相同网站内容变得困难。所以我的建议是重构和分享你的可能,但有2个独立的HTML存在。

希望这有助于

〜迈克尔Zlatkovsky,开发商在Office扩展团队,MSFT

相关问题