我收到 404 not found 错误,因为浏览器无法找到 /signalr/hubs。我在普通的 Web 应用程序(不是 mvc)中使用 signalR-2.0.0-rc1。以下是相关的 web.config 设置
<appSettings>
<add key="owin:AppStartup" value="SignalRHubServer.Startup, SignalRHubServer" />
</appSettings>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
</modules>
</system.webServer>
客户端代码(/signalr/hubs 使用两种方式):
<head>
<title>SignalR Echo</title>
<script type="text/javascript" src="Scripts/jquery-1.6.4.min.js"></script>
<script type="text/javascript" src="Scripts/jquery.signalR-2.0.0-rc1.min.js"></script>
<script type="text/javascript" src="/signalr/hubs"></script>
<!--<script type="text/javascript" src='<%= ResolveClientUrl("signalr/hubs") %>'></script>-->
</head>
Startup.cs 如下:
namespace SignalRHubServer
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapSignalR();
}
}
}
当我调试时,app.MapSignaR() 处的断点确实被命中,但我仍然得到相同的 404 错误。以下是枢纽声明
namespace SignalRHubServer
{
public class MyChatHub : Hub
{
public override Task OnConnected()
{
return base.OnConnected();
}
}
}
我从 SignalR-1.1.3 迁移了应用程序,并从 global.asax.cs 中删除了 MapHubs() 调用。我还卸载了相关的 SignalR nuget 包。但是,使用 SignalR-1.1.3 它曾经可以正常工作。
谁能建议我可能做错了什么?