使用路由时Blazor服务器错误400无法与服务器协商

时间:2020-03-23 23:00:55

标签: blazor blazor-server-side

Blazor Routing Error

描述错误

如所附屏幕截图所示,我正在使用路由:

@page“ / addbrand / {BrandId:guid}”

当我刷新URL https://localhost:44379/addBrand/1abc52f3-c371-4566-847d-1a986f093396时,这会导致错误400由于Balzor协商的URL更改为https://localhost:44379/addBrand/_blazor/negotiate?negotiateVersion=1而不是错误,因此无法加载资源 https://localhost:44379/_blazor/negotiate?negotiateVersion=1

https://localhost:44379/addBrand/_framework/blazor.server.js而不是 https://localhost:44379/_framework/blazor.server.js

这发生在_host.cshtml文件中的所有链接上。

有例外吗?是的,浏览器控制台日志: [2020-03-23T21:57:35.846Z]信息:将'_blazor'标准化为'https://localhost:44379/addBrand/_blazor'。 _blazor / negotiate?negotiateVersion = 1:1无法加载资源:服务器响应状态为400() blazor.server.js:1 [2020-03-23T21:57:35.917Z]错误:无法完成与服务器的协商:错误

其他技术细节

  • ASP.NET Core版本:3.1
  • IDE:VS 2019

我已在github

上举报了

1 个答案:

答案 0 :(得分:2)

在_Host.cshtml中将<base href标签url设置为~/

<head>
...
    <base href="~/" />
...
</head>