Node.js 无法将Microsoft团队应用程序部署到Azure

Node.js 无法将Microsoft团队应用程序部署到Azure,node.js,typescript,microsoft-teams,microsoft-graph-teams,azure-deployment,Node.js,Typescript,Microsoft Teams,Microsoft Graph Teams,Azure Deployment,摘要: 尝试将用typescript编写的Microsoft Team Node.JS项目部署到Azure服务器时,团队应用程序抛出错误“访问此应用程序时出现问题”。在浏览器中打开时,该应用程序工作正常,但在团队中无法识别。似乎所有清单都已正确设置,并且在App Studio验证中运行时,不会返回任何错误 尝试的解决方案: 试图将清单与Microsoft提供的示例相匹配。尝试使用Microsoft共享的示例将Microsoft Team应用程序部署到Azure 代码: 团队应用程序清单: {

摘要: 尝试将用typescript编写的Microsoft Team Node.JS项目部署到Azure服务器时,团队应用程序抛出错误“访问此应用程序时出现问题”。在浏览器中打开时,该应用程序工作正常,但在团队中无法识别。似乎所有清单都已正确设置,并且在App Studio验证中运行时,不会返回任何错误

尝试的解决方案: 试图将清单与Microsoft提供的示例相匹配。尝试使用Microsoft共享的示例将Microsoft Team应用程序部署到Azure

代码:

团队应用程序清单:

{
  "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.7/MicrosoftTeams.schema.json",
  "manifestVersion": "1.7",
  "id": "dfe1fc96-d4db-4ed4-b76a-c26194928313",
  "version": "1.0.0",
  "packageName": "messageleapteams",
  "developer": {
    "name": "Real Data Consulting",
    "websiteUrl": "https://messageleapteams.azurewebsites.net",
    "privacyUrl": "https://messageleapteams.azurewebsites.net/privacy.html",
    "termsOfUseUrl": "https://messageleapteams.azurewebsites.net/tou.html"
  },
  "name": {
    "short": "messageLeapTeams",
    "full": "messageLeapTeams"
  },
  "description": {
    "short": "TODO: add short description here",
    "full": "TODO: add full description here"
  },
  "icons": {
    "outline": "icon-outline.png",
    "color": "icon-color.png"
  },
  "accentColor": "#D85028",
  "configurableTabs": [
    {
      "configurationUrl": "https://messageleapteams.azurewebsites.net/messageLeapTeamsTab/config.html?name={loginHint}&tenant={tid}&group={groupId}&theme={theme}",
      "canUpdateConfiguration": true,
      "scopes": [
        "team"
      ]
    }
  ],
  "staticTabs": [],
  "bots": [],
  "connectors": [],
  "composeExtensions": [],
  "permissions": [
    "identity",
    "messageTeamMembers"
  ],
  "validDomains": [
    "messageleapteams.azurewebsites.net"
  ],
  "showLoadingIndicator": true,
  "isFullScreen": false,
  "webApplicationInfo": {
    "id": "dfe1fc96-d4db-4ed4-b76a-c26194928313",
    "resource": "api://messageleapteams.azurewebsites.net/dfe1fc96-d4db-4ed4-b76a-c26194928313"
  }
}

在我看来,如果你能确保你的代码没有错误,你可以检查你的配置

接下来的描述基于Ms提供的(对话机器人)。我想也是这样。你可以点击链接查看详细信息

  • 您必须创建一个具有客户端机密的Azure Ad应用程序,并修改“appsetting”文件以确保代码可以在本地运行
  • 需要ngrok,以便您可以访问在本地运行的代码
  • 请在Azure portal上创建一个bot,输入正确的appId、客户端密码(在setp 1中创建)和消息端点(启动ngrok后获取https url,不要忘记在url后附加“/api/messages”)
  • 现在,您可以在web聊天中测试在本地环境中运行的代码
  • 如果您想在Teams客户端中进行测试,您需要修改“manifest.json”并创建一个ZIP文件,然后将bot上载到Teams。然后,您必须在步骤3中创建的bot中添加团队频道。
  • 请注意,如果在步骤1中创建的Azure AD应用程序属于与您的团队登录帐户的租户不同的租户,则应将该应用程序设置为多租户应用程序(创建应用程序时,它将要求您选择允许访问此应用程序的用户)


    如果在本地运行该程序没有问题,那么在运行之后就可以了。

    事实证明web应用程序已正确部署,并且清单已正确生成,但是,对于托管在Azure中的团队选项卡应用程序,必须禁用加载指示器。
    我通过在manifest.json中设置
    “showLoadingIndicator”:false
    ,解决了这个问题。您什么时候看到这个错误?“config.html”文件呈现是否至少正常?感谢您的回复,但是我的问题是项目在本地运行良好,但部署到Azure后无法运行。我在本地测试了多次,在团队中运行应用程序时没有问题。谢谢