【发布时间】:2018-02-18 02:25:41
【问题描述】:
我正在尝试使用 displayDialogAsync 从我们的网络应用程序打开我们现有的登录页面,但它返回 400 错误。
var loginUrl = 'https://url.com/xxxxx/login.action';
Office.context.ui.displayDialogAsync(loginUrl, {width:20, height:43}, function (asyncResult) {
loginDialog = asyncResult.value;
loginDialog.addEventHandler(Microsoft.Office.WebExtension.EventType.DialogMessageReceived, receiveMessage);
更新:调试时,我在 showDialog 函数中找到了here,它添加了管道。
当我尝试比较 Dropbox 的登录页面时,我注意到管道被转义了。
【问题讨论】:
-
不清楚你在问什么。您提到了
|,但您的示例代码不包含一个? -
@MarcLaFleur-MSFT 我说的是这个参数添加到 loginUrl 一旦传递到对话框:_host_Info=outlook|web|16.01|en-us|783c4af8-1611-ccc4-6a56-df160b8e6f9a |isDialog
-
您返回的确切错误是什么?错误中通常会包含一条附加消息,其中包含更多细节。
-
感谢@MarcLaFleur-MSFT 的回复。在 Chrome 中我得到:页面不工作,HTTP 错误 400。我在打开插件时也遇到此错误 解析“沙盒”属性时出错:“ms-allow-popups”是无效的沙盒标志. ,我从另一个thread 中读到它,只是忽略它。在 IE 中,错误是:找不到网页。最可能的原因:地址中可能有输入错误。.. async.status 已成功,我正在使用 O365 Outlook。
-
@MarcLaFleur-MSFT 我可以在我们的网络应用程序中使用我们现有的登录页面并使用对话框打开它还是我需要创建一个新的登录页面?我目前正在做的是先验。
标签: javascript outlook office-js