Angular + OIDC隐式流静默更新

时间:2019-01-17 19:12:52

标签: angular oidc

我在我的OIDC服务器的Angular应用程序中使用angular-auth-oidc-client软件包进行身份验证。我们使用隐式流,并且它起作用,但是在访问令牌生存期结束时,一些用户在应用程序中执行操作时被注销。因此,我们想实现“静音更新”功能,该功能在该文档的文档中有详细介绍。

因此,我添加了一个silent-renew.html文件并将其放置在Angular应用程序的/src文件夹中,并尝试将其放置在/assets文件夹中。在/assets文件夹中时,我在控制台中收到一个错误,提示Angular应用程序找不到匹配的路由:

enter image description here

它仅显示一次,并且无提示续订无效;您仍然会注销。如果它位于/assets文件夹中,则不会显示任何错误,但无提示续订仍然无效。

我的真正问题是:如何将silent-renew.html文件放在哪里以及如何正确配置软件包以进行无提示续订?

部署后,我们将构建有角度的应用程序并将其放置在NGINX服务的docker容器中。在本地,我们只是使用CLI来为应用程序提供服务。

1 个答案:

答案 0 :(得分:0)

您可以按以下方式修改angular.json:

{
  "projects": {
    "test2": {
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "assets": [
              "src/silent-renew.html" // <-- add this line
            ],
          },
        },
      }
    }
  }
}

当然,您必须拥有一个名为silent-renew.html的文件。

构建时,此文件将被复制到dist旁边的index.html文件夹(或您要构建到的任何文件夹)中。

希望这会有所帮助

Fabian