BlazorWebAssembly:“Prerender”只适用于主页
创始人
2024-12-22 01:30:15
0

在Blazor WebAssembly中,Prerender可以在页面加载之前将HTML发送到浏览器,提高性能和用户体验。但是,由于它似乎只适用于主页,这可能对其他页面产生一些问题。虽然可以使用ASP.NET Core的Middleware和Serializers来解决这个问题,但这可能也需要手动设置很多东西。

在这种情况下,可以使用以下代码解决这个问题:

首先在程序中添加以下代码:

app.Use(async (context, next) => { await next();

if (!context.Request.Path.Value.StartsWith("/_blazor"))
{
    context.Response.Headers.Add("X-Content-Type-Options", "nosniff");
}

});

然后在后端Blazor程序目录中,创建一个名为“PrerenderingComponent.razor”的组件。在其中,添加以下代码:

@inject IUriHelper UriHelper @inject HttpClient HttpClient

@code { [Parameter] public string Endpoint { get; set; } [Parameter] public string Data { get; set; } [Parameter] public string AdditionalScripts { get; set; }

private bool _loading = true;

protected override async Task OnInitAsync()
{
    var url = UriHelper.GetAbsoluteUri(Endpoint);
    var response = await HttpClient.PostAsync(url, new StringContent(Data, Encoding.UTF8, "application/json"));

    if (response.IsSuccessStatusCode)
    {
        var html = await response.Content.ReadAsStringAsync();
        Html = html.Replace("", $"{AdditionalScripts}");
        _loading = false;
    }
    else
    {
        Html = "An error occurred!";
    }
}

public string Html { get; private set; }

public bool IsLoading => _loading;

}

使用方法为:在各个页面components中,使用该组件的方式代替 Microsoft.AspNetCore.Components.Server.Prerendering.PrerenderComponent。

这样,就可以在Blazor WebAssembly的各个页面中使用Prerender,而不仅仅是主页了。

相关内容

热门资讯

黑科技辅助!aapoker有外... 黑科技辅助!aapoker有外挂,(AAPoKer ai)原来真的有挂,技巧教程(方式)-哔哩哔哩;...
黑科技辅助!wepokeai代... 黑科技辅助!wepokeai代打的胜率,(Wepoke插件挂)原来真的有挂,存在挂教程(有挂工具)-...
黑科技辅助!aapoker辅助... 黑科技辅助!aapoker辅助,(AAPoKer工具)原来真的有挂,2025新版技巧(解惑)-哔哩哔...
黑科技辅助!悟空黑桃a金花是真... 黑科技辅助!悟空黑桃a金花是真人,(悟空黑桃a真人)原来真的有挂,普及教程(新版)-哔哩哔哩;1.悟...
黑科技辅助!wepoke辅助,... 黑科技辅助!wepoke辅助,(WePoKe能玩)原来真的有挂,必赢方法(真的有挂)-哔哩哔哩;We...
黑科技辅助!微扑克有辅助透视,... 黑科技辅助!微扑克有辅助透视,(微扑克辅助挂)原来真的有挂,微扑克教程(证实)-哔哩哔哩;2. 七法...
黑科技辅助!wepoke插件,... 黑科技辅助!wepoke插件,(Wepoke代码)原来真的有挂,详细教程(有挂秘笈)-哔哩哔哩;人气...
黑科技辅助!wepoke黑科技... 您好:WePoKeai辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
黑科技辅助!wepokeai代... 黑科技辅助!wepokeai代打辅助,(Wepoke新更新)原来真的有挂,专业教程(的确有挂)-哔哩...
黑科技辅助!德扑ai软件靠谱,... 黑科技辅助!德扑ai软件靠谱,(德扑胜率)原来真的有挂,详细教程(工具)-哔哩哔哩是一款可以让一直输...