【问题标题】:Blazor SSR - Browser error when routing to different pages with docker (https-portal)Blazor SSR - 使用 docker(https-portal)路由到不同页面时出现浏览器错误
【发布时间】:2019-08-19 15:03:32
【问题描述】:

我目前正在尝试在 docker 中运行 .NET core 3(预览版 8)SSR-blazor 项目。在您开始导航之前,页面似乎可以正常加载,使用 NavLink,这在浏览器控制台中给了我以下错误:

错误:调用“NotifyLocationChanged”时出现异常 程序集“Microsoft.AspNetCore.Components.Server”。更多细节 在 'CircuitOptions.DetailedErrors' 中开启详细异常

我当前的 docker-compose.yml 文件如下所示:

version: '2'

services:

  app:
    build:
      context: .
      dockerfile: Dockerfile
    depends_on:
      - "database"

  database:
    image: "mcr.microsoft.com/mssql/server:2017-latest-ubuntu"
    environment:
      MSSQL_SA_PASSWORD: "Hidden"
      ACCEPT_EULA: "Y"

  https-portal:
    image: steveltn/https-portal:1
    ports:
      - '80:80'
      - '443:443'
    links:
      - app
    restart: always
    environment:
      - WEBSOCKET: true
      - DOMAINS: 'somesite.com -> http://app:5000'
#      - STAGE: 'local'
      - STAGE: 'staging'
#      - STAGE: 'production'

我认为这与 - WEBSOCKET: true 环境或代码中的 app.UseForwardedHeaders(); 有关。但结果是一样的。

编辑 1:

所以我在启动时添加了以下代码并开始工作:

services.Configure<ForwardedHeadersOptions>(options =>
{
    options.ForwardedHeaders =
                ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
});

https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/proxy-load-balancer?view=aspnetcore-2.2得到它

编辑 2:

没关系,它停止工作了。似乎它只在第一次或长时间不活动后才有效。之后,我得到同样的错误。

编辑 3:

所以我创建了一个全新的 Blazor (preview 8) 项目,具有相同的 docker 结构,奇怪的是它在这个项目中工作。我尝试将这个新项目与我的(在预览版 5 中制作,但随着时间的推移升级)进行比较,但是,我找不到任何重大差异。我目前正在将一些旧代码迁移到新项目中,看看它何时不再工作。我希望这能给我答案,因为此时我完全迷失了。

【问题讨论】:

    标签: docker .net-core docker-compose blazor-server-side


    【解决方案1】:

    我终于让它工作了。所以我不得不将以下内容添加到我的启动中

    app.Use((ctx, next) =>
    {
        ctx.Request.Scheme = "https";
        return next();
    });
    

    现在路由完美了

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      • 1970-01-01
      • 2012-09-01
      • 2019-10-16
      • 1970-01-01
      • 2018-04-23
      • 2020-08-02
      相关资源
      最近更新 更多