gpt4 book ai didi

asp.net-core - 如何在 ASP.NET Core 项目中为 MVC 和 SignalR 配置路由?

转载 作者:行者123 更新时间:2023-12-04 23:14:41 26 4
gpt4 key购买 nike

我正在尝试使用 ASP.NET Core 2.1.0-preview1 和 ASP.NET Core SignalR 1.0.0-alpha1 和 Angular4 客户端构建一个 Web 应用程序。到目前为止,我已经能够顺利通过并且实际上可以从客户端内部打开 SignalR Web 套接字连接。不过,这是有代价的,这是我的 Startup.cs 的摘录:

app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");

/*routes.MapSpaFallbackRoute(
name: "spa-fallback",
defaults: new { controller = "Home", action = "Index" });*/
});

app.UseWebSockets();
app.UseSignalR(routes =>
{
routes.MapHub<Feed>("feed");
});

如您所见,我不得不禁用“spa-fallback”路由,如果我不这样做,SignalR 将接收纯 HTML 而不是 JSON。当然,这样做的缺点是我现在必须输入确切的 URL(例如 localhost:12345/home/index),这很糟糕。

所以我的问题是,如何让 MVC 路由和 SignalR 路由并排运行?

最佳答案

您需要输入 UseSignalR之前 UseMvc否则回退路由将在 UseSignalR 添加的路由之前注册.

关于asp.net-core - 如何在 ASP.NET Core 项目中为 MVC 和 SignalR 配置路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46055779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com