首页 > 解决方案 > MS Teams Bot oAuthPrompt,如何更改弹出窗口大小

问题描述

我想知道如何控制 ms-teams oauthPrompt 弹出窗口的大小。

我正在编写一个包含 sso 到我的应用程序的 Teams 机器人。

我按照“46.teams-auth”等示例进行操作,并运行了两个服务:ms-teams-bot、auth-service

AddDialog(new OAuthPrompt(
  nameof(OAuthPrompt),
    new OAuthPromptSettings
      {
        ConnectionName = ConnectionName,
        Text = "Please Sign In",
        Title = "Sign In",
        Timeout = 300000, // User has 5 minutes to login (1000 * 60 * 5)
      }));

一切正常,除了我不知道如何控制单击 oAuthPrompt 中的登录按钮后打开的弹出窗口的大小。

我发现这篇文章指出我可以在 URL 中添加宽度/高度来控制弹出窗口的大小,但我不明白他们指的是哪个 URL。我在 Azure 上的“服务提供者连接设置”中设置了我的身份验证服务的 URL,向其中添加宽​​度/大小不会影响弹出窗口的大小,并且“登录”按钮的 URL 不受我控制.

标签: authenticationbotframeworksizemicrosoft-teamspopupwindow

解决方案


您需要在 URL 中传递宽度和高度查询字符串参数。请看下面的代码。

microsoftTeams.authentication.authenticate({
    url: window.location.origin + "/tab-auth/simple-start",
    width: 600,
    height: 535,
    successCallback: function (result) {
        getUserProfile(result.accessToken);
    },
    failureCallback: function (reason) {
        handleAuthError(reason);
    }
});

推荐阅读