Я пытаюсь написать TCP-клиент, который долго общается с сервером. Я должен отправить сообщение, и в зависимости от его содержимого сервер вернет мой ответ. Когда я подключаюсь к серверу со своего клиента, я получаю сообщение об успешном подключении. Удаленный сервер начинает отправлять данные моему клиенту, но когда я отправляю им новый сервер сообщений, мне не отвечает.
var client = new net.Socket();
client.connect(SERVER_PORT, 'SERVER_HOST', function() {
console.info('Connected');
client.write('Hello, server! Love, Client.');
});
client.on('data', function(data) {
console.info('Received: ' + data);
});
client.write('Hello again, server!');
Похоже, сервер никогда не получает другое мое сообщение «Привет снова, сервер». Кто-нибудь знает, где проблема?
Похоже, вы отправляете на сервер что-то, что он не понимает или не отвечает автоматически. Можете ли вы показать нам код сервера или документацию по серверу, чтобы мы увидели, что он должен делать? Такой низкоуровневый TCP-сервер нуждается в каком-то «протоколе», чтобы сервер знал, когда сообщение или запрос были полностью получены. Например, простой протокол заключался бы в завершении каждой команды переводом строки. Клиент не может просто отправить что-либо, но должен следовать тому протоколу, который ожидает сервер.