yrishi Ответов: 3

С WebSocket, с применением аппликации .Чистая


хороший день,

Я хочу написать простой клиент с WebSocket, с применением .net-приложения. В основном это будет работать как Google - простое расширение клиента WebSocket.

Пожалуйста, помогите, если это возможно.

Заранее спасибо.

С уважением,
Ириши

Что я уже пробовал:

Я попытался ниже кода, но получил ошибку - System.Net.Internals.SocketExceptionFactory.ExtendedSocketException: "невозможно установить соединение, потому что целевая машина активно отказалась

Код как belwo.
TcpClient client = new TcpClient();

     client.Client.Connect(IPAddress.Parse("xx.xx.xx.xx"), 8000);

     //Task.Run(() =>; ReadData(client));

     Task.Run(() =>; ReadDataLoop(client));

     client.Client.Send(Encoding.ASCII.GetBytes("{\"TID\":1111,\"blabla\":{}}"));

3 Ответов

Рейтинг:
2

Richard MacCutchan

xx.xx.xx.xx не является допустимым IP-адресом.

Но если вы внимательно посмотрите на сообщение об ошибке, вы можете увидеть проблему. Любая система, к которой вы пытаетесь подключиться, не примет ваш запрос на подключение. Поэтому вам нужно выяснить у владельцев этого сайта, почему это так. Является ли это открытая система, которая позволяет анонимные соединения, или она требует авторизации детали?


yrishi

Привет Ричард

Спасибо за ваш ответ.

IP правильно и я сделал это сознательно :)

Да, это открытая система, как и моя система, и этот IP-адрес находится в той же локальной сети.

С уважением,
Йогеш

Richard MacCutchan

Тогда вы легко сможете проверить, что можете подключиться к нему из браузера или сеанса telnet

Рейтинг:
2

phil.o

Скорее всего, брандмауэр на целевой машине не принимает входящие TCP-соединения на порту 8000.


yrishi

Спасибо Phil.o за ваш ответ. IP-это правильно. Позвольте мне проверить настройки брандмауэра.

Рейтинг:
2

RickZeeland

Попробуйте добавить порт 8000 в Windows, как описано здесь: Как разрешить приложениям взаимодействовать через Брандмауэр Windows[^]