Я получаю сообщение об ошибке
Необработанное исключение: NoSuchMethodError: При записи строки в socket.write был вызван метод 'write'.
OnС другой стороны, если я подключить стандартный ввод к сокету, это прекрасно работает.В приведенном ниже коде, если вы комментируете socket.write ('$ _ request \ r \ n');и раскомментируйте stdin.listen ((data) =>, вы увидите, что все работает так, как должно быть.
String _request = "Hello World";
жестко запрограммировано, но может быть получено из-заИнтернет или другой клиент. Я пытаюсь следовать некоторому примеру и не могу понять, почему stdin.listen работает, а не стандартная строка.
Поэтому мой вопрос: Как преобразовать сокет stdin в сокет запроса в Dart?
Это справка по рабочему коду @Gazi:
ОБНОВЛЕНО:
Socket.connect("192.168.22.120", 3000)
.then((Socket sock) {
socket = sock;
socket.listen(dataHandler,
onError: errorHandler,
onDone: doneHandler,
cancelOnError: false);
}).then((_) {
print(_request); // so that your code runs AFTER the TCP/IP connection
socket.write('$_request\r\n');
})
.catchError((AsyncError e) {
print("Unable to connect: $e");
exit(1);
});