Office.context.ui.displayDialogAsync не работает в Outlook для Office 365 - PullRequest
0 голосов
/ 26 января 2019

У меня есть кнопка входа в мою надстройку, которая открывает Microsoft OAuth, и это достигается с помощью displayDialogAsync.Сначала я попытался в веб-приложении outlook (https://outlook.live.com)), и там он работает правильно, то есть он открывает диалоговое окно для входа. Но затем я попытался сделать то же самое в клиенте для настольного компьютера, но когда я нажимаю кнопку входа в системуничего не происходит.

Office.context.ui.displayDialogAsync(fullUrl,
        { height: 40, width: 40 }, function (result) {
            _dlg = result.value;
            _dlg.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
        });

1 Ответ

0 голосов
/ 28 января 2019

Ваш обратный вызов должен проверить result.error.code и result.error.message. Как только вы узнаете, в чем заключается ошибка, вы можете приступить к устранению неполадок. Вот пример.

var dialog;
Office.context.ui.displayDialogAsync('https://myDomain/myDialog.html',
   function (asyncResult) {
       if (asyncResult.status === Office.AsyncResultStatus.Failed) {
            showNotification(asyncResult.error.code = ": " + asyncResult.error.message);
       } else {
            dialog = asyncResult.value;
            dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
      }
});

Я также рекомендую прочитать Dialog API | Обработка ошибок и событий .

...