【发布时间】:2022-10-06 17:33:57
【问题描述】:
我是 Signal R Core 的新手。我正在尝试将 Signal R 客户端连接到无服务器集线器。在我的示例中,我现在只想创建多个 en get a connection 实例,每次连接一个新实例。
static async Task Main(string[] args)
{
var client = new HttpClient();
var response = await client.GetAsync(\"http://localhost:7071/api/negotiate?userid=1\");
response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync();
var d = JsonConvert.DeserializeObject<dynamic>(responseBody);
string urlString = Convert.ToString(d.Url);
var connection = new HubConnectionBuilder()
.ConfigureLogging(logging =>
{
// Set the log level of signalr stuffs
logging.AddFilter(\"Microsoft.AspNetCore.SignalR\", LogLevel.Debug);
})
.WithUrl(urlString, options => options.AccessTokenProvider = () => Task.FromResult(Convert.ToString(d.AccessToken)))
.Build();
connection.On<NewConnection>(\"newConnection\", c => OnReceiveMessage(c));
await connection.StartAsync();
// while (connection.State == HubConnectionState.Connected)
// {
// }
Console.Read();
}
private static void OnReceiveMessage(NewConnection connection)
{
Console.WriteLine($\"user {connection.UserId} with connctionid {connection.ConnectionId} has been connected\");
}
在我的 Javascript 客户端上这是有效的,但在我的 Net 客户端上,每次连接后它都会断开连接:
[2022-10-02T11:03:27.542Z] Executing \'Functions.OnConnected\' (Reason=\'(null)\', Id=3878244a-50cd-47a6-b8c6-98ed1c0dd5c6)
[2022-10-02T11:03:27.544Z] KimOo3chMz6M9zxEPAlpzQ has connected
[2022-10-02T11:03:27.549Z] Executed \'Functions.OnConnected\' (Succeeded, Id=3878244a-50cd-47a6-b8c6-98ed1c0dd5c6, Duration=7ms)
[2022-10-02T11:03:27.571Z] Executing \'Functions.OnDisconnected\' (Reason=\'(null)\', Id=693bec34-3ed3-434c-93fb-e366c1113e4a)
[2022-10-02T11:03:27.572Z] KimOo3chMz6M9zxEPAlpzQ has disconnected
不知道我现在缺少什么。