У меня есть сервер сокетов TCP в качестве C# Консольного приложения и C# клиента, который я полностью украл у этого сайта
Они работают нормально.
Однако, когда я пытаюсь подключиться к этому серверу с помощью клиента dart на той же машине. Я не могу подключиться. Он выдаст ошибку времени ожидания при соединении.
Это код дротика
import 'dart:io';
import 'dart:convert';
import 'dart:async';
main() async {
Socket socket = await Socket.connect("fe80::9c72:d354:9394:eeeb%3", 11111);
print('connected');
// listen to the received data event stream
socket.listen((List<int> event) {
print(utf8.decode(event));
});
// send hello
socket.add(utf8.encode('hello'));
// wait 5 seconds
await Future.delayed(Duration(seconds: 5));
// .. and close the socket
socket.close();
}
Важное примечание:"fe80 :: 9c72: d354: 9394: eeeb% 3 "- мой локальный адрес ipv6, и я убедился, что сокет доступен с этого адреса, жестко закодировав его в клиенте C#. Работал замечательно.
Спасибо за любой ответ