Подключение к концентратору сервера из консольного приложения asp.net core 2.2. - PullRequest
1 голос
/ 26 мая 2019

У меня есть сервер под управлением .net 4.5.1 с SignalR (IIS)

Я хочу подключиться к серверу, используя консольное клиентское приложение на .net core 2,2. Я установил следующий пакет Nuget на клиент

Microsoft.AspNetCore.SignalR.Client;

и последовали

https://docs.microsoft.com/en-us/aspnet/core/signalr/dotnet-client?view=aspnetcore-2.2

Я получаю сообщение об ошибке ниже

"Произошла ошибка при открытии соединения: System.Net.Http.HttpRequestException: код состояния ответа не указывает на успешность: 404 (не найден)."

Имя моего концентратора на сервере правильное, поэтому я не уверен в проблеме

я тоже пробовал

.WithUrl("http://172.10.0.20:81/client/?hub=myHub")

помогите пожалуйста

connection = new HubConnectionBuilder()

//.WithUrl("http://172.10.0.20:81/client/?hub=myHub")

.WithUrl("http://172.10.0.20:81/myHub")

.Build();

connection.StartAsync().ContinueWith(task => {

if (task.IsFaulted)

{Console.WriteLine("There was an error opening the connection:{0}",

task.Exception.GetBaseException());}

else

{Console.WriteLine("Connected");}}).Wait();

connection.StartAsync();

Ответы [ 2 ]

1 голос
/ 27 мая 2019

Я не могу воспроизвести вашу проблему. Но поскольку ваш сервер размещен на .net 4.5.1, убедитесь, что вы используете одну и ту же версию SignalR как на стороне сервера, так и на стороне клиента.

Это означает, что вы не можете использовать ASP.NET CORE SignalR (концентратор или клиент) с ASP.NET SignalR (концентратор или клиент). Вы не можете смешивать их. Вы можете нажать здесь для получения дополнительной информации.

0 голосов
/ 27 мая 2019

спасибо, что подтолкнуло меня в правильном направлении.
Я использую signalR с веб-формами, поэтому концентратор расположен на

http://172.10.0.20:82/signalr/myHub

После изменения пути я получил следующееинформационная ошибка

There was an error opening the connection:System.IO.InvalidDataException: Invalid negotiation response received. ---> System.InvalidOperationException: Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server.
...