SignalR 自托管和 Asp.Net MVC
SignalR Self Hosted And Asp.Net MVC
我正在尝试制作一些自托管的 SignalR 应用程序(控制台)。但它不适用于 Asp.Net MVC 5,我搜索了所有内容。我实际上已经使用了 1 天,但仍然无法正常工作。
我在控制台和 Web 端都使用 SignalR 2.4.1。
控制台应用程序的启动代码是;
class startup
{
public void Configuration(IAppBuilder app)
{
var hubConfiguration = new HubConfiguration();
hubConfiguration.EnableDetailedErrors = true;
hubConfiguration.EnableJSONP = true;
HubException exception = new HubException();
//app.UseCors(CorsOptions.AllowAll);
app.MapSignalR(hubConfiguration);
Console.WriteLine("hub started");
}
}
在主控制台上;
class Program
{
static void Main(string[] args)
{
string url = @"http://localhost:5693";
var web = WebApp.Start<startup>(url);
Console.ReadLine();
}
}
测试中心是;
public class testHub : Hub
{
public void hopeWorks()
{
Console.WriteLine("called");
Clients.All.Work();
Clients.Caller.Work();
}
}
客户端就是这样Javascript;
$.connection.hub.start().done(function () {
console.log("socket started");
});
我附上了发送代码到按钮的消息,但它不起作用,所以我正在控制台上尝试。
我正在尝试从开发工具中调用它,它是
$.connection.testHub.server.hopeWorks();
并没有像图片显示的那样发生任何事情。
我不知道我还应该尝试什么,我什么都试过了。在 google 上搜索并浏览了下一页。
抱歉,顺便说一句英语。
我解决了这个问题。
我像这样更改了启动脚本并且它有效。
app.MapSignalR(hubConfiguration);
有了这个;
app.Map("/signalr", map =>
{
HubConfiguration hcf = new HubConfiguration();
map.RunSignalR();
});
现在可以使用了。
我正在尝试制作一些自托管的 SignalR 应用程序(控制台)。但它不适用于 Asp.Net MVC 5,我搜索了所有内容。我实际上已经使用了 1 天,但仍然无法正常工作。
我在控制台和 Web 端都使用 SignalR 2.4.1。
控制台应用程序的启动代码是;
class startup
{
public void Configuration(IAppBuilder app)
{
var hubConfiguration = new HubConfiguration();
hubConfiguration.EnableDetailedErrors = true;
hubConfiguration.EnableJSONP = true;
HubException exception = new HubException();
//app.UseCors(CorsOptions.AllowAll);
app.MapSignalR(hubConfiguration);
Console.WriteLine("hub started");
}
}
在主控制台上;
class Program
{
static void Main(string[] args)
{
string url = @"http://localhost:5693";
var web = WebApp.Start<startup>(url);
Console.ReadLine();
}
}
测试中心是;
public class testHub : Hub
{
public void hopeWorks()
{
Console.WriteLine("called");
Clients.All.Work();
Clients.Caller.Work();
}
}
客户端就是这样Javascript;
$.connection.hub.start().done(function () {
console.log("socket started");
});
我附上了发送代码到按钮的消息,但它不起作用,所以我正在控制台上尝试。 我正在尝试从开发工具中调用它,它是
$.connection.testHub.server.hopeWorks();
并没有像图片显示的那样发生任何事情。
我不知道我还应该尝试什么,我什么都试过了。在 google 上搜索并浏览了下一页。
抱歉,顺便说一句英语。
我解决了这个问题。 我像这样更改了启动脚本并且它有效。
app.MapSignalR(hubConfiguration);
有了这个;
app.Map("/signalr", map =>
{
HubConfiguration hcf = new HubConfiguration();
map.RunSignalR();
});
现在可以使用了。