gpt4 book ai didi

c# - SignalR Core 无法从 JS 客户端连接

转载 作者:行者123 更新时间:2023-11-30 18:45:31 26 4
gpt4 key购买 nike

我正在关注本指南 from MS .我创建了一个 MVC Core 2.0 应用程序并添加了包引用

<PackageReference Include="Microsoft.AspNetCore.SignalR" Version="1.0.0-alpha1-final" />

我配置了 Startup.cs

    public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddSignalR();
}

 public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseSignalR(routes =>
{
routes.MapHub<Statistics>("statistics");
});

...
}

这是我的 StatisticsHub:

public class Statistics : Hub
{
public Task Send(string message)
{
return Clients.All.InvokeAsync("Send", message);
}
}

来 self 的 HomeController我有一个返回此 View 的索引操作:

<script src="js/signalr-client-1.0.0-alpha2-final.js"></script>

<script>
let connection = new signalR.HubConnection('/statistics');

connection.on('send', data => {
console.log(data);
});

connection.start()
.then(() => connection.invoke('send', 'Hello'));
</script>

我也试图包括 <script src="js/signalr-clientES5-1.0.0-alpha2-final.js"></script>客户端,但没有区别。

我启动应用程序,firefox 启动,这是控制台中发生的事情: Errors

按照教程一步一步来的,不知道为什么连不上。

最佳答案

尝试以下操作

[HubName("Statistics")]
public class Statistics : Hub
{
public Task Send(string message)
{
return Clients.All.InvokeAsync("Send", message);
}
}

脚本

<script>
$.connection.hub.url = "http://localhost:xxxx/signalr";
var statisticsHub = $.connection.Statistics;
</script>

或者

<script>
let connection = new signalR.HubConnection('http://localhost:xxxx');

connection.on('send', data => {
console.log(data);
});

connection.start()
.then(() => connection.invoke('send', 'Hello'));
</script>

其中"xxxx:为端口号

关于c# - SignalR Core 无法从 JS 客户端连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47658923/

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